diff --git a/meesign_core/lib/src/model/key_type.dart b/meesign_core/lib/src/model/key_type.dart index 94677e4..7deff3b 100644 --- a/meesign_core/lib/src/model/key_type.dart +++ b/meesign_core/lib/src/model/key_type.dart @@ -2,8 +2,8 @@ import 'package:meesign_core/src/model/protocol.dart'; import 'package:meesign_network/grpc.dart' as rpc; enum KeyType { - signPdf([Protocol.gg18]), - signChallenge([Protocol.gg18, Protocol.frost]), + signPdf([Protocol.gg18, Protocol.ptsrsap1]), + signChallenge([Protocol.gg18, Protocol.frost, Protocol.ptsrsap1]), decrypt([Protocol.elgamal]); final List supportedProtocols; diff --git a/meesign_core/lib/src/model/protocol.dart b/meesign_core/lib/src/model/protocol.dart index d5f62be..cc1896c 100644 --- a/meesign_core/lib/src/model/protocol.dart +++ b/meesign_core/lib/src/model/protocol.dart @@ -5,6 +5,8 @@ enum Protocol { gg18(6, 10), elgamal(4, 2), frost(3, 3); + // TODO those numbers are a guess work + ptsrsap1(2, 2); final int keygenRounds; final int signRounds; @@ -21,6 +23,8 @@ extension ProtocolConversion on Protocol { return ProtocolId.Elgamal; case Protocol.frost: return ProtocolId.Frost; + case Protocol.ptsrsap1: + return ProtocolId.Ptsrsap1; } } @@ -32,6 +36,8 @@ extension ProtocolConversion on Protocol { return ProtocolType.ELGAMAL; case Protocol.frost: return ProtocolType.FROST; + case Protocol.ptsrsap1: + return ProtocolId.PTSRSAP1; } } @@ -43,6 +49,8 @@ extension ProtocolConversion on Protocol { return Protocol.elgamal; case ProtocolType.FROST: return Protocol.frost; + case Protocol.ptsrsap1: + return ProtocolId.PtSRSAP1; default: throw ArgumentError('Unknown protocol'); }