View Javadoc
1   package civitas.crypto.rsapublickey;
2   
3   import java.security.PrivateKey;
4   
5   import javax.crypto.Cipher;
6   
7   import org.springframework.beans.factory.annotation.Autowired;
8   import org.springframework.stereotype.Controller;
9   
10  import civitas.crypto.Constants;
11  import civitas.crypto.CryptoBase;
12  import civitas.crypto.publickeyciphertext.PublicKeyCiphertext;
13  
14  @Controller
15  public class DecryptPublic implements Constants {
16  	@Autowired
17  	CryptoBase cryptoBase;
18  
19  	public String apply(final PrivateKey key, final PublicKeyCiphertext ciphertext) {
20  		byte[] plaintext = cryptoBase.doCrypto(
21  				PUBLIC_KEY_CIPHER_ALG, PUBLIC_KEY_PROVIDER, key, Cipher.DECRYPT_MODE, ciphertext.encryptedBytes);
22  		return new String(plaintext, CHARSET);
23  	}
24  }