Core Update 1.4.0
This commit is contained in:
37
core/Objects/TwoFactor/AttestationObject.class.php
Normal file
37
core/Objects/TwoFactor/AttestationObject.class.php
Normal file
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace Objects\TwoFactor;
|
||||
|
||||
use Objects\ApiObject;
|
||||
|
||||
class AttestationObject extends ApiObject {
|
||||
|
||||
use \Objects\TwoFactor\CBORDecoder;
|
||||
|
||||
private string $format;
|
||||
private array $statement;
|
||||
private AuthenticationData $authData;
|
||||
|
||||
public function __construct(string $buffer) {
|
||||
$data = $this->decode($buffer)->getNormalizedData();
|
||||
$this->format = $data["fmt"];
|
||||
$this->statement = $data["attStmt"];
|
||||
$this->authData = new AuthenticationData($data["authData"]);
|
||||
}
|
||||
|
||||
public function jsonSerialize(): array {
|
||||
return [
|
||||
"format" => $this->format,
|
||||
"statement" => [
|
||||
"sig" => base64_encode($this->statement["sig"] ?? ""),
|
||||
"x5c" => base64_encode(($this->statement["x5c"] ?? [""])[0]),
|
||||
],
|
||||
"authData" => $this->authData->jsonSerialize()
|
||||
];
|
||||
}
|
||||
|
||||
public function getAuthData(): AuthenticationData {
|
||||
return $this->authData;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user