@@ -1032,19 +1032,39 @@ public static PGPSignature join(PGPSignature sig1, PGPSignature sig2)
1032
1032
}
1033
1033
1034
1034
SignatureSubpacket [] unhashed = (SignatureSubpacket [])merged .toArray (new SignatureSubpacket [0 ]);
1035
- return new PGPSignature (
1036
- new SignaturePacket (
1037
- sig1 .getVersion (),
1038
- sig1 .sigPck .hasNewPacketFormat (),
1039
- sig1 .getSignatureType (),
1040
- sig1 .getKeyID (),
1041
- sig1 .getKeyAlgorithm (),
1042
- sig1 .getHashAlgorithm (),
1043
- sig1 .getHashedSubPackets ().packets ,
1044
- unhashed ,
1045
- sig1 .getDigestPrefix (),
1046
- sig1 .sigPck .getSignature ()
1047
- )
1048
- );
1035
+ if (sig1 .getVersion () == SignaturePacket .VERSION_6 )
1036
+ {
1037
+ return new PGPSignature (
1038
+ new SignaturePacket (
1039
+ sig1 .getVersion (),
1040
+ sig1 .getSignatureType (),
1041
+ sig1 .getKeyID (),
1042
+ sig1 .getKeyAlgorithm (),
1043
+ sig1 .getHashAlgorithm (),
1044
+ sig1 .getHashedSubPackets ().packets ,
1045
+ unhashed ,
1046
+ sig1 .getDigestPrefix (),
1047
+ sig1 .sigPck .getSignatureBytes (),
1048
+ sig1 .getSalt ()
1049
+ )
1050
+ );
1051
+ }
1052
+ else
1053
+ {
1054
+ return new PGPSignature (
1055
+ new SignaturePacket (
1056
+ sig1 .getVersion (),
1057
+ sig1 .sigPck .hasNewPacketFormat (),
1058
+ sig1 .getSignatureType (),
1059
+ sig1 .getKeyID (),
1060
+ sig1 .getKeyAlgorithm (),
1061
+ sig1 .getHashAlgorithm (),
1062
+ sig1 .getHashedSubPackets ().packets ,
1063
+ unhashed ,
1064
+ sig1 .getDigestPrefix (),
1065
+ sig1 .sigPck .getSignature ()
1066
+ )
1067
+ );
1068
+ }
1049
1069
}
1050
1070
}
0 commit comments