Ngày nay, hành vi này chỉ được coi là thực tế không tốt để tự mã hóa mật khẩu. Thường thì một chuỗi tùy ý (được gọi là "muối") được thêm vào mọi mật khẩu và sau đó mã hóa được áp dụng. Về nguyên tắc nó không quan trọng trong những gì trình tự bạn đang thêm "muối" và mã hóa. Tất cả những kết hợp này đều bình đẳng trong sức mạnh mã hóa:
HASH (Pass & Salt) OR HASH (HASH (Pass)+Salt)) OR HASH (HASH (Pass) + HASH (Salt))
Salt được giữ trong bảng riêng biệt như đồng bằng văn bản. Một điều bạn có thể làm là mã hóa cùng một giá trị nhiều lần trong một hàng. Sự chậm trễ nhỏ cho một người dùng sẽ không đáng chú ý, nhưng nó sẽ làm tăng nỗ lực cần thiết để gây sức ép cho mật khẩu.
Cũng là một cách hay để đặt tên bảng để không thể đoán được tên bảng. Nó làm cho các cuộc tấn công mù trở nên khó khăn hơn khi họ không thể lấy được mật khẩu ngay lập tức.
Như một cách để mã hóa chuỗi.
SQL Server 2000 Không có chức năng đối xứng tích hợp. Có 2 chức năng không đối xứng được tích hợp sẵn: BINARY_CHECKSUM
và CHECKSUM
.
VB VB cung cấp cho bạn các thuật toán đã triển khai cũng như các công cụ để thực hiện của riêng bạn. Bài viết được đề cập bởi @SuperFunkyMonkey có liên kết đến Security.Cryptography Namespace. Một thuật toán đối xứng khác (thuật toán bạn có thể giải mã) là Rijndael.
'VB6' hoặc 'VB.NET'? Dù bằng cách nào tôi cũng chắc chắn rằng Google sẽ có rất nhiều kết quả cho nó. Tại sao mã hóa phải được đảo ngược? Nó là bình thường để chỉ sử dụng một cách băm. –
VB6. Giá trị chuỗi phải được mã hóa đầu tiên. Nhưng, khi được yêu cầu trong tương lai, người ta có thể giải mã cùng một giá trị được mã hóa với giá trị chuỗi ban đầu. – Kings