非对称密钥:应用场景

public class EncryptionAndSignatureExample {

复制代码
public static void main(String[] args) throws Exception {
    // 生成公私钥对
    KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
    keyPairGenerator.initialize(1024);
    KeyPair keyPair = keyPairGenerator.generateKeyPair();
    PrivateKey privateKey = keyPair.getPrivate();
    PublicKey publicKey = keyPair.getPublic();
    System.out.println("公钥:" + publicKey);
    System.out.println("私钥:" + privateKey);

    // 私钥加密、公钥验签示例
    String message = "Test message for signature";
    byte[] signature = sign(privateKey, message);
    boolean isVerified = verify(publicKey, message, signature);

    System.out.println("私钥加密、公钥验签结果: " + isVerified);

    // 公钥加密、私钥解密示例
    String encryptedMessage = encrypt(publicKey, "Secret message");
    String decryptedMessage = decrypt(privateKey, encryptedMessage);

    System.out.println("公钥加密、私钥解密后的消息: " + decryptedMessage);
}

public static byte[] sign(PrivateKey privateKey, String message) throws Exception {
    Signature signature = Signature.getInstance("SHA256withRSA");
    signature.initSign(privateKey);
    signature.update(message.getBytes());
    return signature.sign();
}

public static boolean verify(PublicKey publicKey, String message, byte[] signature) throws Exception {
    Signature verification = Signature.getInstance("SHA256withRSA");
    verification.initVerify(publicKey);
    verification.update(message.getBytes());
    return verification.verify(signature);
}

public static String encrypt(PublicKey publicKey, String message) throws Exception {
    // 这里简单模拟加密,实际应用中需使用更完善的加密逻辑
    return message + "_encrypted";
}

public static String decrypt(PrivateKey privateKey, String encryptedMessage) throws Exception {
    // 这里简单模拟解密,实际应用中需使用更完善的解密逻辑
    return encryptedMessage.replace("_encrypted", "");
}

}

相关推荐
NOVAnet20233 分钟前
React曝“炸弹级”漏洞(CVE-2025-55182),CVSS 10.0分!已有在野利用,企业如何紧急防御
前端·react.js·网络安全·前端框架
侦探观察5 分钟前
南非女性旅游绑架风险分析及防范措施
android·大数据·开发语言·百度·网络安全·旅游
Whoami!6 分钟前
❽⁄₄ ⟦ OSCP ⬖ 研记 ⟧ 修改漏洞利用脚本 ➱ 分析漏洞利用脚本(.c){上}
网络安全·信息安全·缓冲区溢出
Suckerbin13 分钟前
Assertion: 1.0.1
安全·web安全·网络安全
XH-hui31 分钟前
【打靶日记】HackMyVm 之 Random
linux·网络安全·hackmyvm·hmv
码农12138号1 小时前
网络安全-文件上传漏洞
web安全·网络安全·文件上传漏洞
白帽黑客-晨哥9 小时前
网络安全技术:数字时代的守护者
web安全·网络安全·渗透测试
pandarking11 小时前
[CTF]攻防世界:题目名称-warmup
android·web安全·网络安全
介一安全16 小时前
【Frida Android】实战篇12:企业常用对称加密场景 Hook 教程
android·网络安全·逆向·安全性测试·frida