Ⅰ 在密碼學中的rsa演算法是什麼
RSA演算法是一種著名的公開密鑰密碼體制,它利用一對密鑰——一個用於加密的公開密鑰和一個用於解密的私有密鑰。這種體制的特點是,公開密鑰可以安全地分享給任何人,而私有密鑰必須保密。在RSA演算法中,加密過程使用公開密鑰,而解密過程則需要對應的私有密鑰。這種設計確保了即使加密信息被攔截,沒有私有密鑰也無法解密。
RSA演算法自1978年提出以來,一直是密碼學領域的基石之一。它允許用戶生成一對密鑰,其中公鑰可以公開,而私鑰必須保密。為了提高安全性,RSA密鑰的長度通常至少為500位。在實際應用中,為了平衡安全性和效率,通常會結合使用傳統的對稱加密方法和RSA演算法。例如,信息可以使用DES或IDEA等對稱加密演算法進行加密,然後使用RSA演算法加密對稱密鑰和信息摘要。接收方在解密信息時,可以使用相應的私鑰來驗證信息的完整性和真實性。
RSA演算法的安全性已經得到了廣泛驗證,盡管在1983年麻省理工學院為其申請了專利,但RSA演算法的設計和實現仍然是公開的,任何人都可以研究和使用。隨著技術的發展,對於1024位密鑰的RSA演算法來說,安全性受到了越來越多的威脅。因此,為了保證電子認證服務的安全,一些機構已經開始停止提供1024位密鑰的RSA演算法服務,轉而採用更安全的演算法。
Ⅱ RSA是什麼意思
RSA演算法是一種非對稱密碼演算法,所謂非對稱,就是指該演算法需要一對密鑰,使用其中一個加密,則需要用另一個才能解密。
RSA的演算法涉及三個參數,n、e1、e2。
其中,n是兩個大質數p、q的積,n的二進製表示時所佔用的位數,就是所謂的密鑰長度。
e1和e2是一對相關的值,e1可以任意取,但要求e1與(p-1)*(q-1)互質;再選擇e2,要求(e2*e1)mod((p-1)*(q-1))=1。
(n及e1),(n及e2)就是密鑰對。
RSA加解密的演算法完全相同,設A為明文,B為密文,則:A=B^e1 mod n;B=A^e2 mod n;
e1和e2可以互換使用,即:
A=B^e2 mod n;B=A^e1 mod n;
補充回答:
對明文進行加密,有兩種情況需要這樣作:
1、您向朋友傳送加密數據,您希望只有您的朋友可以解密,這樣的話,您需要首先獲取您朋友的密鑰對中公開的那一個密鑰,e及n。然後用這個密鑰進行加密,這樣密文只有您的朋友可以解密,因為對應的私鑰只有您朋友擁有。
2、您向朋友傳送一段數據附加您的數字簽名,您需要對您的數據進行MD5之類的運算以取得數據的"指紋",再對"指紋"進行加密,加密將使用您自己的密鑰對中的不公開的私鑰。您的朋友收到數據後,用同樣的運算獲得數據指紋,再用您的公鑰對加密指紋進行解密,比較解密結果與他自己計算出來的指紋是否一致,即可確定數據是否的確是您發送的、以及在傳輸過程中是否被篡改。
密鑰的獲得,通常由某個機構頒發(如CA中心),當然也可以由您自己創建密鑰,但這樣作,您的密鑰並不具有權威性。
計算方面,按公式計算就行了,如果您的加密強度為1024位,則結果會在有效數據前面補0以補齊不足的位數。補入的0並不影響解密運算。
Ⅲ RSA 鈥斺 緇忓吀鐨勯潪瀵圭О鍔犲瘑綆楁硶
鎺㈢儲RSA鍔犲瘑浼犲囷細闈炲圭О鍔犲瘑綆楁硶鐨勫ゥ縐
鍦ㄥ瘑鐮佸︾殑鐟板疂涓錛孯SA綆楁硶浠ュ叾鐙鐗圭殑闈炲圭О鎬х嫭鏍戜竴甯溿傚畠灝卞儚涓鎶婄炵樼殑閽ュ寵錛岃╀俊鎮鍦ㄧ湅浼兼棤瑙g殑璋滈樹腑瀹夊叏絀挎銆備竴鏃︽帉鎻′簡嬈ф媺鍑芥暟銆佹ф媺瀹氱悊鍜岄嗗厓鐨勭簿楂擄紝RSA鍔犲瘑涓庤В瀵嗙殑鍘熺悊灝嗗彉寰楄交鑰屾槗涓俱傝╂垜浠涓璧鋒彮寮榪欎釜鍔犲瘑綆楁硶鐨勭炵橀潰綰便
鍔犲瘑錛屾槸灝嗘槑鏂囬氳繃鐗瑰畾綆楁硶鍙樺夠錛屼嬌涔嬪湪鏈鎺堟潈鑰呴潰鍓嶅彉寰椾笉鍙璇匯傝岃В瀵嗭紝鍒欐槸榪欎釜榪囩▼鐨勯嗚繍綆楋紝鎮㈠嶅師濮嬩俊鎮銆傛槑鏂囦笌瀵嗘枃錛屽氨鍍忎竴瀵瑰瘑鐮佺殑鍘熷艦涓庡彉褰錛岄氳繃鍔犲瘑綆楁硶鐨勯瓟娉曪紝鍙樺緱闅句互瑙﹀強銆
鍦ㄥ姞瀵嗘墜孌典腑錛屽圭О涓庨潪瀵圭О鏄涓ょ嶆埅鐒朵笉鍚岀殑鏂瑰紡銆傚圭О鍔犲瘑濡侫ES鍜孌ES錛屼嬌鐢ㄥ悓涓鎶婂瘑閽ヨ繘琛屽姞瑙e瘑錛岄珮鏁堜絾瀵嗛掗綆$悊澶嶆潅銆傜浉鍙嶏紝RSA鐨勯潪瀵圭О鎬т互鍏閽ュ拰縐侀掗鐨勫囧欑粍鍚堜負鐗圭偣錛屼竴涓鍏寮錛屼竴涓淇濆瘑錛岀『淇濅簡淇℃伅浜ゆ崲鐨勫畨鍏ㄣ
RSA綆楁硶鐨勬牳蹇冨熀浜庝竴涓鏁板﹂毦棰橈細緔犳暟鐨勪箻縐鐪嬩技瀹規槗鐢熸垚錛屼絾鍒嗚В鍗村紓甯稿洶闅俱傛f槸榪欎釜鍘熺悊錛屾瀯鎴愪簡RSA鍔犲瘑鐨勫潥鍥哄熀鐭熾傚叾榪囩▼鍖呮嫭鐢熸垚涓瀵瑰簽澶х殑緔犳暟錛岃$畻涔樼Н騫舵壘鍒板畠浠鐨勯嗗厓錛屽艦鎴愬叕閽ュ拰縐侀掗榪欏瑰瘑閽ヤ即渚c
鍔犲瘑鏃訛紝鏄庢枃閫氳繃鍏閽ョ殑騫傝繍綆椾笌妯¤繍綆楋紝鍙樻垚鐪嬩技鏃犺抗鍙寰鐨勫瘑鏂囷紱鑰岃В瀵嗭紝鍒欐槸縐侀掗鐨勮亴璐o紝榪愮敤鍚屾牱鐨勬暟瀛﹂瓟娉曞皢瀵嗘枃榪樺師涓哄師濮嬩俊鎮銆俁SA鐨勫閥濡欒捐★紝璁╁畨鍏ㄥ拰鏁堢巼鎵懼埌浜嗗畬緹庣殑騫寵銆
縐侀掗瑙e瘑鐨勫叧閿鍦ㄤ簬錛屽畠紜淇濅簡瀵嗘枃緇忚繃騫傚彇妯″悗絳変簬鏄庢枃銆傛棤璁烘槸浜掔礌榪樻槸闈炰簰緔犵殑鎯呭喌錛屾ф媺瀹氱悊鍜岄嗗厓鐨勮繍鐢錛岄兘淇濊瘉浜嗚繖涓榪囩▼鐨勬g『鎬с傝孯SA鐨勫畨鍏ㄦу湪浜庯紝瑕佺牬瑙e畠錛屽氨鍍忚瘯鍥句粠涓鍫嗘暟瀛椾腑鎵懼嚭闅愯棌鐨勯掗鍖欙紝闇瑕佸瑰ぇ鏁存暟榪涜屽洜鏁板垎瑙o紝榪欏湪褰撳墠鐨勮$畻鑳藉姏涓嬪嚑涔庢槸涓嶅彲鑳界殑鎸戞垬銆
鎬葷粨鏉ヨ達紝RSA綆楁硶鍥犲叾闈炲圭О鎬э紝鏈夋晥鍦拌В鍐充簡瀵圭О鍔犲瘑鐨勫悓姝ラ棶棰橈紝涓轟俊鎮瀹夊叏鎻愪緵浜嗗己澶х殑淇濇姢銆傚敖綆$牬瑙g殑闅懼害宸ㄥぇ錛屼絾姝f槸榪欑嶆寫鎴樻э紝浣垮緱RSA鎴愪負鐜頒唬閫氫俊棰嗗煙涓嶅彲鎴栫己鐨勫姞瀵嗗伐鍏楓