21 lines
992 B
Java
21 lines
992 B
Java
package org.jivesoftware.smackx.signed.xep0285;
|
|
|
|
import org.bouncycastle.openpgp.PGPSignature;
|
|
import org.jivesoftware.smackx.signed.xep0285.element.DataElement;
|
|
import org.jivesoftware.smackx.signed.xep0285.element.PlainElement;
|
|
import org.jivesoftware.smackx.signed.xep0285.element.SignatureElement;
|
|
import org.jivesoftware.smackx.signed.xep0285.element.SignedElement;
|
|
import org.jivesoftware.smackx.signed.xep0285.signing.Signer;
|
|
|
|
import java.io.IOException;
|
|
|
|
public class EncapsulatingSignatureManager {
|
|
|
|
public static SignedElement createSignedElement(PlainElement plainElement, Signer signer) throws IOException {
|
|
DataElement dataElement = DataElement.fromPlainElement(plainElement);
|
|
PGPSignature signature = signer.createSignature(dataElement.getUtf8Bytes());
|
|
SignatureElement signatureElement = SignatureElement.fromBytes(signer.getAlgorithmName(signature), signature.getEncoded());
|
|
return new SignedElement(signatureElement, dataElement);
|
|
}
|
|
}
|