treasurechest/treasurechest/chestcrypto/doublekey/public.cs

36 lines
996 B
C#

namespace chestcrypto{
public class DoublePublicKey{
private byte[] signingPublicKey = new byte[32];
private byte[] encryptPublicKey = new byte[32];
private string[] signingPublicKeyString;
private string[] encryptPublicKeyString;
public byte[] getRawDouble(){
return ByteCombiner.Combine(signingPublicKey, encryptPublicKey);
}
public DoublePublicKey(byte[] sign, byte[] encrypt){
signingPublicKey = sign;
encryptPublicKey = encrypt;
}
public DoublePublicKey(byte[] joinedKey){
if (joinedKey.Length != 64){
throw new InvalidDoubleKeyException();
}
for (int i = 0; i < joinedKey.Length; i++){
if (i < 32){
this.signingPublicKey[i] = joinedKey[i];
continue;
}
this.encryptPublicKey[i - 32] = joinedKey[i];
}
}
}
}