zoukankan      html  css  js  c++  java
  • RSA 数字签名算法(Java版)

    数字签名算法Java版 还是上代码吧

            public static final String  SIGN_ALGORITHMS = "SHA1WithRSA";
    
    	 /**
    	   * RSA签名
    	   * @param content 待签名数据
    	   * @param privateKey 私钥
    	   * @param input_charset 编码格式
    	   * @return 签名值
    	   */
    	   public static String sign(String content, String privateKey, String input_charset)
    	   {
    	        try 
    	        {
    	           byte[] decode =Base64.getDecoder().decode(privateKey);	
    	           PKCS8EncodedKeySpec priPKCS8   = new PKCS8EncodedKeySpec(decode);
    	           KeyFactory keyf= KeyFactory.getInstance("RSA");
    	           PrivateKey priKey= keyf.generatePrivate(priPKCS8);
    	           java.security.Signature signature = java.security.Signature.getInstance(SIGN_ALGORITHMS);
    	           signature.initSign(priKey);
    	           signature.update(content.getBytes(input_charset) );
    	           byte[] signed = signature.sign();    
    	           return Base64.getEncoder().encodeToString(signed);
    	        }
    	        catch (Exception e) 
    	        {
    	           e.printStackTrace();
    	        }
    	        
    	        return null;
    	    }        
    

      

    调用方式:

      String sign = sign(”content”,”privateKey”,"utf-8");

    Over,Tks.

  • 相关阅读:
    第三天
    第二天
    第一天
    构建之法阅读笔记06
    返回一个一维整数数组中最大子数组的和2
    团队介绍
    软件工程结对作业02
    返回一个整数数组中最大子数组的和
    构建之法阅读笔记05
    暑假周总结二7.22
  • 原文地址:https://www.cnblogs.com/localhost2016/p/8758715.html
Copyright © 2011-2022 走看看