最后采用的是先RSA加密,然后Base64加密,再做URLEncode

JS與PHP使用RSA算法進行加密通訊 2015-09-28

我們平時做用戶登錄表單提交,用戶名密碼都是明文直接POST到後端,這樣很容易被別人從監聽到. 注:包括使用MD5等哈希函數處理後的數據,這裏也算做明文(現在MD5爆破網站已經很多了~). 對安全性要求較高的網站,比如銀行和大型企業等都會使用HTTPS對其進行加密通訊. 但是由于效率原因,使用HTTPS的代價是及其昂貴的,對于訪問量稍大的網站就會造成嚴重的效能瓶頸.解決方法一般只能采用專門的SSL硬件加速設備如F5的BIGIP等. 所以很多網站選擇了模擬SSL的做法,使用RSA來對密碼等安全信息進

IDEA加密文件Base64轉換String傳輸以及報文摘要MD5防止惡意篡改 2015-10-07

一.需求:將數據加密之後存放到excel表中,到另一個地方之後,解密讀出明文,但要采取一定的方法鑒別密文是否被修改過.二.思路:先用MD5報文摘或/*** 把二維數組導出成excel表* @param list 裝載導出數據的二維數組* @param filePath 導出的文件名,不包含路徑* @author LiangYiHuai*/public boolean exportForm(List<ArrayList<String>> list, String fileName)

Base64加密及Java代碼實現 2015-09-27

這種加密方式主要就是"防君子不防小人".即達到一眼望去完全看不出內容即可. base64的java代碼實現: import java.io.ByteArrayOutputStream; public class Base64 { private static char[] base64EncodeChars = new char[] { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',

base64 加密圖片 2015-09-29

用base64_encode()加密,存入DB,取出的時候用base64_decode()解密. $img_file = "路徑/abc.jpg"; $img_string = base64_encode(file_get_contents($img_file)); // $img_string的值可以直接存到DB //從DB取圖片並顯示出圖片 $img_string = "DB裏取得"; $img = base64_decode($img_string); hea

Base64加密 摘要 2015-09-29

import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; import java.io.OutputStream; import javax.mail.internet.MimeUtility; public class Base64 {  public static byte[] encode(byte[] b) throws Exception

Silverlight中非對稱加密及數字簽名RSA算法的實現 2015-10-01

RSA算法是第一個既能用于數據加密也能用于數字簽名的算法.它易于理解和操作,也很流行.它的安全性是基于大整數素因子分解的困難性,而大整數因子分解問題是數學上的著名難題,至今沒有有效的方法予以解決,因此可以確保RSA算法的安全性.    到目前Silverlight4 Beta發布爲止,Silverlight中仍然沒有提供非對稱加密及數字簽名相關的算法.而.NET Framework中提供的RSA等算法,都是通過操作系統提供的相關API實現的,沒法移植到Silverlight中使用.因此很難實現一

sqlite數據庫加密 2015-09-28

SQLite 簡介 SQLite是一款被設計用于嵌入式設備的輕型的數據庫,是遵守ACID的關聯式數據庫管理系統,它具有存儲效率高.查詢快.運行時占用記憶體小.能被多進程同時訪問以及單文件存儲數據庫內容等優點.SQLite中文官方網站上列舉了SQLite的如下特點: ACID事務零配置 – 無需安裝和管理配置儲存在單一磁盤文件中的一個完整的數據庫 數據庫文件可以在不同字節順序的機器間自由的共享 支持數據庫大小至2TB 足夠小, 大致3萬行C代碼, 250K – (下載了最新源碼好像有12萬行了) 比

對稱加密與非對稱加密 2015-09-29

對稱加密算法對稱加密算法是應用較早的加密算法,技術成熟.在對稱加密算法中,數據發信方將明文(原始數據)和加密密鑰一起經過特殊加密算法處理後,使其變成複雜的加密密文發送出去.收信方收到密文後,若想解讀原文,則需要使用加密用過的密鑰及相同算法的逆算法對密文進行解密,才能使其恢複成可讀明文.在對稱加密算法中,使用的密鑰只有一個,發收信雙方都使用這個密鑰對數據進行加密和解密,這就要求解密方事先必須知道加密密鑰.對稱加密算法的特點是算法公開.計算量小.加密速度快.加密效率高.不足之處是,交易雙方都使用同樣

對稱加密和不對稱加密原理 2015-09-29

私鑰加密(對稱加密 symmetric cryptography):私鑰加密算法使用單個私鑰來加密和解密數據.由于具有密鑰的任意一方都可以使用該密鑰解密數據,因此必須保護密鑰不被未經授權的代理得到.私鑰加密又稱爲對稱加密,因爲同一密鑰既用于加密又用于解密.私鑰加密算法非常快(與公鑰算法相比),特別適用于對較大的數據流執行加密轉換.Well-known secret key cryptographic algorithms include the Data Encryption Standard

java加密與數字證書 2015-09-29

java加密與數字證書
加密與數字證書 加密與數字證書 概念 數字摘要 密鑰加密技術 私用密鑰(對稱加密) 公共密鑰(非對稱加密) 數字簽名 數字證書 X.509標准 工具 keytool 示例代碼 加密解密 密鑰庫准備 代碼 簽名驗簽 代碼 概念 數字摘要 數字摘要就是采用單項Hash函數將需要加密的明文"摘要"成一串固定長度(128位)的密文,這一串密文又稱爲數字指紋,HASH ...

軟件加密技術和注冊機制 2015-09-30

本文是一篇軟件加密技術的基礎性文章,簡要介紹了軟件加密的一些基本常識和一些加密産品,適用于國內軟件開發商或者個人共享軟件開發者閱讀參考.1.加密技術概述 一個密碼系統的安全性只在于密鑰的保密性,而不在算法的保密性. 對純數據的加密的確是這樣.對于你不願意讓他看到這些數據(數據的明文)的人,用可靠的加密算法,只要破解者不知道被加密數據的密碼,他就不可解讀這些數據. 但是,軟件的加密不同于數據的加密,它只能是"隱藏".不管你願意不願意讓他(合法用戶,或 Cracker)看見這些數據(軟件的

Java中常用的加密方法(JDK) (轉) 2015-09-30

加密,是以某種特殊的算法改變原有的信息數據,使得未授權的用戶即使獲得了已加密的信息,但因不知解密的方法,仍然無法了解信息的內容.大體上分爲 雙向加密和 單向加密,而雙向加密又分爲 對稱加密和 非對稱加密(有些資料將加密直接分爲對稱加密和非對稱加密). 雙向加密大體意思就是明文加密後形成密文,可以通過算法還原成明文.而單向加密只是對信息進行了摘要計算,不能通過算法生成明文,單向加密從嚴格意思上說不能算是加密的一種,應該算是摘要算法吧.具體區分可以參考: (本人解釋不清呢 -- ) http://s

加密與解密中的一些基本概念 2015-10-03

加密與解密中的一些基本概念 X.509標准簡介伺服器SSL數字證書和客戶端單位數字證書的格式遵循 X.509 標准. X.509 是由國際電信聯盟(ITU-T)制定的數字證書標准.爲了提供公用網路用戶目錄信息服務, ITU 于 1988 年制定了 X.500 系列標准.其中 X.500 和 X.509 是安全認證系統的核心, X.500 定義了一種區別命名規則,以命名樹來確保用戶名稱的唯一性: X.509 則爲 X.500 用戶名稱提供了通信實體鑒別機制,並規定了實體鑒別過程中廣泛適用的證書語法

java與openssl的rsa算法互用 2015-10-03

說明    1.java生成的公私鑰格式爲 pkcs8, 而openssl默認生成的公私鑰格式爲 pkcs1,兩者的密鑰實際上是不能直接互用的    2.java采用的rsa默認補齊方式是pkcs1, 因此互用的時候需要將openssl中的補齊方式設置爲RSA_PKCS1_PADDING    3.rsa加密中,加密數據長度有限制,不能超過密鑰長度-11, 如密鑰爲1024位,則最長的加密數據位117字節: 加密後的密文長度總是爲密鑰的一半,即1024位的密文爲512位RSA加密常用的填充方式有

試譯雷神的微軟平台安全寶典第二章 簡介和RSA章節 2015-10-05

簡介        在我多年致力于微軟基礎架構及企業部署的工作中,微軟文件加密系統(Microsoft's Encrypting File System,EFS)是我迄今爲止見過的最強大的加密技術之一,但其中大多數安全功能卻並未被充分利用到.我很少看到這種技術應用在企業級或中等規模的開發環境中,即使有,也只是個人或團隊將其作爲他們自己基于EFS安全控制中一些孤立的實例來使用.這樣做是有一定的道理的.EFS易于進行個人設置和自主使用,但在大規模正確部署EFS時,就需要對其許可.恢複代理管理.備份.

Java中使用OpenSSL生成的RSA公私鑰進行數據加解密 2016-01-26

本文出處:http://blog.csdn.net/chaijunkun/article/details/7275632,轉載請注明.由于本人不定期會整理相關博文,會對相應內容作出完善.因此強烈建議在原始出處查看此文.RSA是什麽:RSA公鑰加密算法是1977年由Ron Rivest.Adi Shamirh和LenAdleman在(美國麻省理工學院)開發的.RSA取名來自開發他們三者的名字.RSA是目前最有影響力的公鑰加密算法,它能夠抵抗到目前爲止已知的所有密碼攻擊,已被ISO推薦爲公鑰數據加密

DES加密+Base64轉換 2015-09-27

package httpVisit.action; import javax.crypto.Cipher; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.DESKeySpec; import javax.crypto.spec.IvParameterSpec; import sun.misc.BASE64Decoder; import sun.misc.B

RSA加密解密及數字簽名Java實現 2015-09-28

    RSA公鑰加密算法是1977年由羅納德·李維斯特(Ron Rivest).阿迪·薩莫爾(Adi Shamir)和倫納德·阿德曼(Leonard Adleman)一起提出的.當時他們三人都在麻省理工學院工作.RSA就是他們三人姓氏開頭字母拼在一起組成的.     RSA是目前最有影響力的公鑰加密算法,它能夠抵抗到目前爲止已知的絕大多數密碼攻擊,已被ISO推薦爲公鑰數據加密算法.     RSA算法是一種非對稱密碼算法,所謂非對稱,就是指該算法需要一對密鑰,使用其中一個加密,則需要用另一個才

加密、解密及OpenSSL 詳解 2015-09-29

加密、解密及OpenSSL 詳解
1. 數據傳輸分類 在互聯網上數據傳輸有兩種:明文傳輸和加密傳輸.明文傳輸的協定有:ftp.http.smtp.telnet.但是爲了數據的完整性和安全性,所以後來引用了加密等相關手段來保證數據的安全和完整性. 2. 案例引入 我在外地出差,因工作需要,公司主管要發給我一份重要資料給我,怎麽才能讓這個資料順利的傳到我的手上,而且我懷疑有人會竊取這個重要資料,若是被誰竊取到那公司 ...
一周排行