timestampSignature method
Future<Uint8List>
timestampSignature(
- Uint8List signature, {
- PdfTimestampValidationOptions? validationOptions,
Requests a timestamp token for signature.
Implementation
Future<Uint8List> timestampSignature(
Uint8List signature, {
PdfTimestampValidationOptions? validationOptions,
}) async {
final digest = _computeDigest(signature, hashAlgorithm);
final requestBytes = _buildRequest(digest, hashAlgorithm);
final responseBytes = await _postRequest(requestBytes);
final token = _parseResponse(responseBytes);
final options = validationOptions ?? this.validationOptions;
if (options != null) {
final result = await _validateToken(token, options);
if (options.throwOnFailure) {
if (!result.cmsValid) {
throw StateError('Timestamp TSA com assinatura invalida.');
}
if (options.requireTrustedChain && result.chainTrusted != true) {
throw StateError('Timestamp TSA com cadeia nao confiavel.');
}
}
}
return token;
}