2020-08-20 18:53发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家,
我需要使用私钥加密消息,然后将其编码为base64。我能够使用该函数进行编码,但不能进行加密。 你能帮忙吗?
实现了这一点。 Signer函数有效,但要注意的是输出将发送到标头。 访问标头以获取带符号的值。
我已经使用了简单签名器功能,但未提供任何输出。 输入和输出相同。
我也尝试了下面的Groovy代码,但它给出了错误
错误-
java.lang.NoSuchMethodException:无方法签名:org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.encryptRSAData()适用于参数类型:(java.lang.String,iaia.security.rsa.RSAPrivateKey) >
代码
导入com.sap.gateway.ip.core.customdev.util.Message; 导入java.util.HashMap; 导入com.sap.it.api.ITApiFactory; 导入com.sap.it.api.keystore.KeystoreService; 导入java.security.cert.Certificate; 导入java.security.KeyPair; 导入java.security.PrivateKey; 导入javax.crypto.Cipher; 导入javax.crypto.SecretKey; 导入javax.crypto.spec.SecretKeySpec; 导入javax.crypto.spec.IvParameterSpec; 导入org.apache.commons.codec.binary.Base64; 导入groovy.xml.Namespace; 导入groovy.util.XmlParser; 导入groovy.xml.XmlUtil; def消息processData(消息消息){ KeystoreService服务= ITApiFactory.getApi(KeystoreService.class,null); 证书cert = service.getCertificate(" alias"); KeyPair密钥对= service.getKeyPair(" alias"); PrivateKey privateKey = keypair.getPrivate(); //身体 def body = message.getBody(java.lang.String)as String; 字符串encryptionXMLData = cryptoRSAData(body,privateKey); 返回encryptedXMLData; }
最多设置5个标签!
实现了这一点。 Signer函数有效,但要注意的是输出将发送到标头。 访问标头以获取带符号的值。
我已经使用了简单签名器功能,但未提供任何输出。 输入和输出相同。
我也尝试了下面的Groovy代码,但它给出了错误
错误-
java.lang.NoSuchMethodException:无方法签名:org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.encryptRSAData()适用于参数类型:(java.lang.String,iaia.security.rsa.RSAPrivateKey) >
代码
一周热门 更多>