@Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Digest digest = (Digest) o; if (method != digest.getMethod()) return false; return Arrays.equals(value, digest.getValue()); }
public Mic(Digest digest) { this(Base64.getEncoder().encodeToString(digest.getValue()), SMimeDigestMethod.findByDigestMethod(digest.getMethod())); }
public Mic(Digest digest) { this(Base64.getEncoder().encodeToString(digest.getValue()), SMimeDigestMethod.findByDigestMethod(digest.getMethod())); }
public MimeMessage createSignedMimeMessageNew(MimeBodyPart mimeBodyPart, Digest digest, SMimeDigestMethod digestMethod) throws OxalisTransmissionException { try { MimeMultipart mimeMultipart = new MimeMultipart(); mimeMultipart.setSubType("signed"); mimeMultipart.addBodyPart(mimeBodyPart); MimeBodyPart signaturePart = new MimeBodyPart(); DataSource dataSource = new ByteArrayDataSource(SMimeBC.createSignature(digest.getValue(), digestMethod, privateKey, ourCertificate), "application/pkcs7-signature"); signaturePart.setDataHandler(new DataHandler(dataSource)); signaturePart.setHeader("Content-Type", "application/pkcs7-signature; name=smime.p7s; smime-type=signed-data"); signaturePart.setHeader("Content-Transfer-Encoding", "base64"); signaturePart.setHeader("Content-Disposition", "attachment; filename=\"smime.p7s\""); signaturePart.setHeader("Content-Description", "S/MIME Cryptographic Signature"); mimeMultipart.addBodyPart(signaturePart); MimeMessage mimeMessage = new MimeMessage(session); mimeMessage.setContent(mimeMultipart, mimeMultipart.getContentType()); mimeMessage.saveChanges(); return mimeMessage; } catch (MessagingException | OxalisSecurityException e) { throw new OxalisTransmissionException(e.getMessage(), e); } } }
public MimeMessage createSignedMimeMessageNew(MimeBodyPart mimeBodyPart, Digest digest, SMimeDigestMethod digestMethod) throws OxalisTransmissionException { try { MimeMultipart mimeMultipart = new MimeMultipart(); mimeMultipart.setSubType("signed"); mimeMultipart.addBodyPart(mimeBodyPart); MimeBodyPart signaturePart = new MimeBodyPart(); DataSource dataSource = new ByteArrayDataSource(SMimeBC.createSignature(digest.getValue(), digestMethod, privateKey, ourCertificate), "application/pkcs7-signature"); signaturePart.setDataHandler(new DataHandler(dataSource)); signaturePart.setHeader("Content-Type", "application/pkcs7-signature; name=smime.p7s; smime-type=signed-data"); signaturePart.setHeader("Content-Transfer-Encoding", "base64"); signaturePart.setHeader("Content-Disposition", "attachment; filename=\"smime.p7s\""); signaturePart.setHeader("Content-Description", "S/MIME Cryptographic Signature"); mimeMultipart.addBodyPart(signaturePart); MimeMessage mimeMessage = new MimeMessage(session); mimeMessage.setContent(mimeMultipart, mimeMultipart.getContentType()); mimeMessage.saveChanges(); return mimeMessage; } catch (MessagingException | OxalisSecurityException e) { throw new OxalisTransmissionException(e.getMessage(), e); } } }
digestMethodType.setAlgorithm(evidence.getDigest().getMethod().getUri()); messageDetailsType.setDigestMethod(digestMethodType); messageDetailsType.setDigestValue(evidence.getDigest().getValue()); messageDetailsType.setIsNotification(false); remEvidence.setSenderMessageDetails(messageDetailsType);