1. 程式人生 > >AES加密及MD5加密

AES加密及MD5加密

AES加密

 private static string AES_KEY = "80f4kwSR45gY4rPU6YWxnIbqKT87lF93"; //傳入加密方法中
 private static string AES_IV = ""; //傳入加密方法中
 /// <summary>
 /// AES加密
 /// </summary>
 /// <param name="msg">明文</param>
 /// <param name="key">金鑰</param>
 /// <param name="iv">向量,暫時無用</param>
/// <returns>返回BASE64的密文</returns> private static string AesEncrypt(string msg,string key,string iv) { string encryptMsg = ""; byte[] byteKey = Encoding.UTF8.GetBytes(key); //byte[] byteIv = Encoding.UTF8.GetBytes(iv); byte[] encrypted; using (
Aes aes = Aes.Create()) { aes.Key = byteKey; //aes.IV = byteIv; aes.Mode = CipherMode.ECB; aes.Padding = PaddingMode.PKCS7; ICryptoTransform encryptor = aes.CreateEncryptor(); using (MemoryStream msEncrypt =
new MemoryStream()) { using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)) { using (StreamWriter swEncrypt = new StreamWriter(csEncrypt)){ swEncrypt.Write(msg); } encrypted = msEncrypt.ToArray(); encryptMsg = Convert.ToBase64String(encrypted); } } } return encryptMsg; }

AES解密

 private static string AES_KEY = "80f4kwSR45gY4rPU6YWxnIbqKT87lF93"; //傳入解密方法中
 private static string AES_IV = ""; //傳入解密方法中
 /// <summary>
 /// AES解密
 /// </summary>
 /// <param name="msg">密文,格式需要BASE64的格式</param>
 /// <param name="key">金鑰</param>
 /// <param name="iv">向量,暫時無用</param>
 /// <returns>解密後的明文</returns>
 private static string AesDecrypt(string msg, string key, string iv)
        {
            string dncryptMsg = "";
            byte[] byteKey = Encoding.UTF8.GetBytes(key);
            //byte[] byteIv = Encoding.UTF8.GetBytes(iv);
            byte[] byteMsg = Convert.FromBase64String(msg) ;
            using (Aes aes = Aes.Create())
            {
                aes.Key = byteKey;
                //aes.IV = byteIv;
                aes.Mode = CipherMode.ECB;
                aes.Padding = PaddingMode.PKCS7;
                ICryptoTransform decryptor = aes.CreateDecryptor();
                
                using (MemoryStream msDecrypt = new MemoryStream(byteMsg))
                {
                    using (CryptoStream csDecrypt = new CryptoStream(msDecrypt, 
                    decryptor, CryptoStreamMode.Read))
                    {
                        using (StreamReader srDecrypt = new StreamReader(csDecrypt))
                        {
                            dncryptMsg = srDecrypt.ReadToEnd();
                        }
                    }
                }
            }
            return dncryptMsg;
        }

MD5加密

/// <summary>
/// MD5加密
/// </summary>
/// <param name="msg">明文</param>
/// <returns>密文</returns>
 private static string Md5Encrypt(string msg) {
            string encryptMsg = "";
            MD5 md5 = MD5.Create();
            byte[] bytes = md5.ComputeHash(Encoding.UTF8.GetBytes(msg));
            //BitConverter.ToString(bytes,4,8);生成的是16位密文,不使用ToLower()則是大寫
            encryptMsg = BitConverter.ToString(bytes).Replace("-","").ToLower();
            return encryptMsg;
        }

相關推薦

AES加密MD5加密

AES加密 private static string AES_KEY = "80f4kwSR45gY4rPU6YWxnIbqKT87lF93"; //傳入加密方法中 private static

AES,SHA,SHA1,MD5加密解密技術

package com.gant.encrypt; import java.io.UnsupportedEncodingException; import java.security.InvalidKeyException; import java.security.Me

Oracle中定義DES加密解密MD5加密函式

(4)函式使用示例 DES加密: update tb_salarysign_staff s set s.staffpwd =encrypt_des(s.staffpwd, 'test#5&124*!de'); DES解密:select decrypt_des(s.staffpwd, 'test

md5-js加密 JS-MD5加密

JS-MD5加密/html頁面使用   大家都知道,傳輸明文資訊很不安全,尤其像密碼、卡號等這些敏感私密的資訊,更不能暴露出去。在這裡給大家介紹一種在前端JS中的MD5加密演算法(因為要匹配的後臺資料是MD5加密後的字串,所以可以在JS中也用MD5加密。MD5是不能解密的加

Android資料加密MD5加密

前言:       專案中無論是密碼的儲存或者說判斷檔案是否是同一檔案,都會用到MD5演算法,今天來總結一下MD5加密演算法。 什麼是MD5加密?      MD5英文全稱“Message-Digest Algorithm 5”,翻譯過來是“訊息摘要演算法5”,由MD2、MD3、MD4演變過來的,是一種

資料庫密碼加密MD5加密

什麼是資料庫加密 資料庫加密系統是一款基於透明加密技術的資料庫防洩漏系統,該產品能夠實現對資料庫中的敏感資料加密儲存、訪問控制增強、應用訪問安全、安全審計以及三權分立等功能。 資料庫加密的方式有6種方式:DES加密演算法、AES加密演算法、MD5加密演算法、RSA加密演算

安卓中的對稱加密,非對稱加密MD5加密的演算法

轉自:http://blog.csdn.net/fengkaungdewoniu/article/details/52846025 安卓中使用的加密演算法可以說有三種:對稱加密、非對稱加密,及MD5加密。 對稱加密: 對稱加密又稱作私鑰加密。(舉例:家裡大門開門

js的常見的三種密碼加密方式-MD5加密、Base64加密和解密和sha1加密詳解總結

寫在前面寫前端的時候,很多的時候是避免不了註冊這一關的,但是一般的註冊是沒有任何的難度的,無非就是一些簡單的獲取使用者輸入的資料,然後進行簡單的校驗以後呼叫介面,將資料傳送到後端,完成一個簡單的註冊的流程,那麼一般來說,密碼是不做加密的。但是也有一些資料庫裡面存放的是加密後的

Shiro許可權控制 ---base64加密MD5加密

在Java中也有MD5加密,現在咱們講的是Shiro許可權控制框架中自帶的加密方式,有base64加密、MD5加密 <span style="font-size:18px;">packa

AES加密解密&amp;&amp;SHA1、SHA加密&amp;&amp;MD5加密

algorithm buffer password 使用 eas ray locks tex update AES加密解密 SHA1、SHA加密 MD5加密 二話不說立即附上代碼: package com.luo.util; import j

AES,BigInteger,MD5加密

buffer padding result des bank rom pri acc ble package cn.com.gome.cashier.web;import java.lang.reflect.Method;import java.math.B

python3.6執行AES加密解密方法

abc 安裝 pytho south cipher while todo 運行 install python版本:3.6.2 首先安裝pycryptodome cmd執行命令:pip install pycryptodome 特別簡單,代碼如下: #!/usr/bin

簡單的md5加密資料密碼複雜度校驗

資料庫通常需要對密碼進行加密處理,如果已經使用了明文,則需要進行加密遷移。 1. 明文資料庫 CREATE DATABASE `test` ; USE `test`; insert into `t_a`(`id`,`name`,`password`) values (1,'123','q

加密演算法總結 加密演算法(DES,AES,RSA,MD5,SHA1,Base64)比較和專案應用

加密演算法(DES,AES,RSA,MD5,SHA1,Base64)比較和專案應用 加密技術通常分為兩大類:"對稱式"和"非對稱式"。 對稱性加密演算法:對稱式加密就是加密和解密使用同一個金鑰。資訊接收雙方都需事先知道密匙和加解密演算法且其密匙是相同的,之後便是對資料進行加解密了。對稱加密演算法用

md5加密解密

md5加密及解密 package jiemibao; import java.security.MessageDigest; public class MD5andKL { // MD5加碼。32位 public static String M

JS實現AES/ECB/PKCS5Padding加密MD5摘要作為key

庫用的是CryptoJSv3.1.2,這裡面遇到一些坑。 1.引用問題。 呼叫這個庫,老是報錯,查來查去,原來跟檔案引用的順序有關,程式碼如下 <!-- DO NOT CHANGE THE POSITION OF THE FILE BELOW- AES r

MD5加密密碼驗證

MD5加密是常用的加密演算法。可以對任意字串的進行加密。生成16位字元陣列。 密碼驗證:將輸入的密碼進行MD5加密轉換後的字串與資料庫的密碼進行比對。相等則驗證通過。 1 package utils; 2 3 import java.security.MessageDigest; 4 im

c# AES DES MD5加密演算法

MD5加密封裝   MD5常用加密FormsAuthentication.HashPasswordForStoringInConfigFile在Net Freamwork4.5以後就不在支援,下面整理了32位或16位下的幾個方法,以及不同寫法,最後一個由從老版本遷移過來,後續淘汰不用。 us

MD5加密演算法原理實現

1 #include "MD5.h" 2 3 /*4組計算函式*/ 4 inline unsigned int F(unsigned int X, unsigned int Y, unsigned int Z) 5 { 6 return (X & Y) | ((~

[C++] MD5加密演算法原理實現

參考文獻: 1. RFC1321 - R. Rivest 2. 中山大學 蔡國揚 老師的 Web安全課件 演算法概述 MD5 使用 little-endian,輸入任意不定長度資訊,以 512 位長進行分組,生成四個32位資料,最後