- Trang chủ
- Mã hóa
- Mã hóa / Giải mã
- Camellia
Mã hóa và giải mã Camellia
Mã hóa và giải mã văn bản bằng Camellia-128, 192 hoặc 256.
Bạn sẽ cần lại mật khẩu này để giải mã. Không có gì bạn gõ rời khỏi trang này.
Mặc định của OpenSSL là 10.000. Số nào cũng được: càng nhiều thì mật khẩu càng khó đoán; khi giải mã cần đúng số đó.
Lựa chọn thông dụng với OpenSSL. Cần IV; đệm cho đủ khối.
openssl enc -camellia-256-cbc -pbkdf2 -iter 10000 -a -AOpenSSL sẽ hỏi mật khẩu; hãy dán văn bản vào đó, hoặc thêm tệp -in và -out.
Camellia là mã khối của Mitsubishi Electric và NTT, có cùng khối 16 byte và khóa 128, 192 hoặc 256 bit như AES, với mức an toàn tương đương. Nó là tiêu chuẩn ISO/IEC, được dự án NESSIE của châu Âu và CRYPTREC của Nhật Bản lựa chọn, và có sẵn trong OpenSSL — nên mọi thứ trang này mã hóa đều đọc được bằng dòng lệnh openssl, ở mọi chế độ. Mã hóa và giải mã văn bản bằng Camellia-256 theo mặc định (hoặc 128, 192) ở chế độ CBC, ECB, CTR, CFB hoặc OFB, với mật khẩu theo định dạng openssl enc -pbkdf2 hoặc khóa và IV hex của riêng bạn. Công cụ chạy trong trình duyệt: văn bản và khóa không bao giờ rời khỏi thiết bị của bạn, miễn phí và không cần đăng ký.
Cách mã hóa và giải mã văn bản bằng Camellia
- Chọn Mã hóa hoặc Giải mã. Gõ văn bản cần mã hóa, hoặc dán văn bản Base64 hay hex cần giải mã — định dạng được nhận diện tự động.
- Nhập mật khẩu (nút Tạo sẽ sinh một mật khẩu mạnh), hoặc chuyển sang Khóa & IV (hex) rồi nhập hoặc tạo khóa và IV 32 chữ số (ECB không có IV).
- Chọn độ dài khóa (mặc định 256 bit) và chế độ, mặc định CBC. Khi giải mã, hãy dùng đúng mật khẩu, số vòng lặp, độ dài khóa và chế độ đã dùng để mã hóa.
- Sao chép hoặc tải xuống kết quả, hoặc sao chép lệnh openssl ở mục Làm tương tự với OpenSSL để làm điều tương tự trên dòng lệnh — lệnh này không bao giờ chứa mật khẩu của bạn.
Tính năng
- Camellia-128, Camellia-192 và Camellia-256
- Chế độ CBC, ECB, CTR, CFB và OFB; đệm PKCS#7 hoặc không đệm
- Chế độ mật khẩu theo định dạng openssl enc -pbkdf2, mặc định 10.000 vòng lặp PBKDF2 hoặc bất kỳ số nào đến 10 triệu
- Lệnh openssl enc cho mọi độ dài khóa và chế độ, kể cả CTR
- Chế độ Khóa & IV với khóa và IV hex của riêng bạn, hoặc tạo ngẫu nhiên
- Base64 hoặc hex cho đầu vào và đầu ra; sao chép, tải xuống hoặc Hoán đổi kết quả
Có riêng tư không?
Có. Camellia chạy bằng WebAssembly ngay trong trình duyệt, và mật khẩu được kéo giãn bằng Web Crypto của trình duyệt; văn bản, mật khẩu và khóa của bạn không bao giờ bị tải lên hay lưu lại.
Câu hỏi thường gặp
Camellia có an toàn bằng AES không?
Có. Chưa có tấn công thực tế nào vào Camellia đầy đủ, độ dài khóa của nó giống AES, và các tổ chức tiêu chuẩn ở châu Âu và Nhật Bản đã chọn nó cùng với AES. AES là thuật toán được hỗ trợ gần như ở mọi nơi, nên hãy chọn Camellia khi một tiêu chuẩn, đối tác hoặc hệ thống yêu cầu. Như mọi thuật toán mã hóa, mật khẩu là điểm yếu — hãy dùng mật khẩu dài, ngẫu nhiên.
Có thể giải mã bằng OpenSSL không?
Được, không cần provider bổ sung: echo 'U2FsdGVkX1…' | openssl enc -d -camellia-256-cbc -pbkdf2 -iter 10000 -a -A (sau đó OpenSSL sẽ hỏi mật khẩu). Đổi 256 và cbc thành độ dài khóa và chế độ của bạn — ecb, ctr, cfb và ofb đều có — và thêm -nopad nếu bạn đã tắt đệm. Ở chế độ Khóa & IV, dùng -K <khóa hex> -iv <IV hex> thay cho -pbkdf2 -iter.
Camellia được dùng ở đâu?
Trong các bộ mã TLS, trong phần mềm OpenPGP như GnuPG, và trong các hệ thống tuân theo danh sách CRYPTREC của Nhật Bản hoặc tiêu chuẩn ISO/IEC 18033-3. Trang này mã hóa văn bản theo định dạng openssl enc hoặc bằng khóa và IV thô; nó không mở lưu lượng TLS hay tin nhắn OpenPGP, vốn có định dạng riêng.
Camellia có phát hiện văn bản bị thay đổi không?
Không. CBC, ECB, CTR, CFB và OFB chỉ mã hóa: bản mã bị sửa hoặc mật khẩu sai thường gây báo lỗi ở CBC và ECB, nhưng cho ra các byte ngẫu nhiên ở những chế độ khác. Nếu bạn cần phát hiện giả mạo, hãy dùng AES-GCM hoặc ChaCha20-Poly1305.