通常大量使用的兩種密鑰加密技術是:私用密鑰(對稱加密)和公共密鑰(非對稱加密)。
秘密密鑰:使用極其複雜的加密算法,即使破譯者能夠對選擇的任意數量的明文進行加密,也無法找出破譯密文的方法。秘密密鑰的一個弱點是解密密鑰必須和加密密碼相同,這就產生了如何安全地分發密鑰的問題。
公開密鑰:滿足三個條件:第一個條件是指將解密算法作用於密文後就可以獲得明文;第二個條件是指不可能從密文導出解密算法;第三個條件是指破譯者即使能加密任意數量的選擇明文,也無法破譯密碼。如果滿足以上條件,則可以公開加密算法。