มีอัลกอริทึมการเข้ารหัสหลายอย่าง ดังนี้
- Symmetric key Cryptography: ในการเข้ารหัสคีย์สมมาตร คีย์เดียวถูกใช้สำหรับการเข้ารหัสและถอดรหัสทั้งสอง ผู้ส่งต้องการคีย์ (หรือชุดกฎบางอย่าง) เพื่อเข้ารหัส plaintext และส่ง cipher text ไปยังผู้รับ ผู้รับใช้คีย์เดียวกัน (หรือ ruleset) เพื่อถอดรหัสข้อความและคืนค่า plaintext เนื่องจากคีย์เดียวสามารถใช้ได้สำหรับทั้งสองหน้าที่ การเข้ารหัสคีย์สมมาตรจึงรู้จักในชื่อการเข้ารหัสแบบสมมาตร (symmetric encryption) โครงร่างการเข้ารหัสคีย์สมมาตรมักจัดประเภทเป็น stream ciphers หรือ block ciphers Stream ciphers ทำงานบนบิตเดียว (ไบต์หรือคำคอมพิวเตอร์) ในแต่ละครั้ง และดำเนินการโครงสร้าง feedback บางรูปแบบ เพื่อให้คีย์พัฒนาไปเรื่อยๆ
- Public Key Cryptography: การเข้ารหัสคีย์สาธารณะ รู้จักอีกอย่างว่า asymmetric cryptography เป็นรูปแบบของการเข้ารหัสที่ผู้ใช้มีคู่คีย์เข้ารหัส เช่น คีย์สาธารณะและคีย์ส่วนตัว ปัญหาสำหรับการเข้ารหัสคีย์สาธารณะคือการพิสูจน์ว่าคีย์สาธารณะเป็นของแท้ และไม่ได้ถูกปลอมแปลงหรือกู้คืนโดยบุคคลที่สามที่เป็นอันตราย แนวทางหลักสำหรับปัญหานี้คือการใช้ Public-key Infrastructure (PKI) ซึ่งหนึ่งหรือมากกว่าบุคคลที่สาม เรียกว่า certificate authorities รับรองการครอบครองคู่คีย์ อีกแนวทางหนึ่ง ที่ใช้โดย PGP คือวิธี "web of trust" เพื่อให้ความแท้จริงของคู่คีย์
- Hashing: อัลกอริทึมแฮชโดยทั่วไปใช้เพื่อให้ลายนิ้วมือดิจิทัลของเนื้อหาไฟล์ ใช้เพื่อให้แน่ใจว่าไฟล์ไม่ได้ถูกเปลี่ยนแปลงโดยผู้บุกเข้าหรือไวรัส ฟังก์ชันแฮชยังถูกใช้โดยทั่วไปโดยระบบปฏิบัติการบางอย่างเพื่อเข้ารหัสรหัสผ่าน ฟังก์ชันแฮชให้การวัดความสมบูรณ์ของไฟล์
- Pretty Good Privacy (PGP): PGP สามารถใช้เซ็นหรือเข้ารหัสข้อความอีเมลด้วยการคลิกเมาส์เพียงครั้งเดียว ขึ้นอยู่กับเวอร์ชันของ PGP ซอฟต์แวร์ต้องการ SHA หรือ MD5 สำหรับการคำนวณแฮชข้อความ เช่น CAST, Triple-DES, หรือ IDEA สำหรับการเข้ารหัส และ RSA หรือ DSS/Diffie-Hellman สำหรับการแลกเปลี่ยนคีย์และลายเซ็นดิจิทัล เมื่อ PGP ถูกติดตั้งครั้งแรก ผู้ใช้ต้องสร้างคู่คีย์ คีย์หนึ่ง คือ คีย์สาธารณะ สามารถโฆษณาและแพร่หลายอย่างกว้างขวาง คีย์ส่วนตัวถูกป้องกันโดยการใช้ passphrase passphrase ต้องป้อนทุกครั้งที่ผู้ใช้เข้าถึงคีย์ส่วนตัวของพวกเขา
- Kerberos: Kerberos เป็นรูปแบบการยืนยันตัวตนที่ใช้กันอย่างแพร่หลายบนอินเทอร์เน็ต Kerberos ใช้โครงสร้าง client/server และให้การยืนยันตัวตน user-to-server แทนที่จะเป็น host-to-host authentication ในโครงสร้างนี้ ความปลอดภัยและการยืนยันตัวตนจะขึ้นอยู่กับเทคโนโลยีคีย์ลับ โดยที่แต่ละโฮสต์บนเครือข่ายมีคีย์ลับของตัวเอง