//package com.ruoyi.web.controller.chenyanlogin;
//
//public class Receiver {
//    public static void main(String[] args) throws Exception {
//        // 模拟接收到的数据（实际从网络/文件读取）
//        String encryptedData = "U2FsdGVkX1+3n6J7z9X2J4kLmNpPqRsT1W5v8y/B?D="; // 示例密文
//        String sign = "abc123..."; // 示例签名（实际需真实值）
//        String publicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA..."; // 发送方的公钥
//
//        // 1. 验签（确保数据未被篡改且来自可信方）
//        String originalData = "这是敏感数据，需要加密并签名！"; // 实际需从解密后获取，此处仅为演示
//        boolean isVerified = RSAUtil.verify(originalData, sign, publicKey);
//        System.out.println("验签结果: " + (isVerified ? "成功" : "失败"));
//
//        // 2. AES 解密（需使用与发送方相同的密钥）
//        String aesKey = "1234567890123456"; // 必须与发送方一致
//        String decryptedData = AESUtil.decrypt(encryptedData, aesKey);
//        System.out.println("\n解密后数据: " + decryptedData);
//
//        // 3. 重新验签（实际应先解密再验签，此处调整顺序仅为演示）
//        isVerified = RSAUtil.verify(decryptedData, sign, publicKey);
//        System.out.println("重新验签（正确流程）: " + (isVerified ? "成功" : "失败"));
//    }
//}