Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Như bạn đã biết, mã hoá bằng mật khẩu là một phương pháp mã hoá dữ liệu cơ bản chỉ sử dụng đến mật khẩu và có thể giải mã với cùng mật khẩu đó. | SQL Server 2005 - Hack dữ liệu đã mã hoá bởi mật khẩu Nguồn quantrimang.com Trong phần 1 của loạt bài này chúng tôi đã giới thiệu phương pháp mã hoá và giải mã bằng mật khẩu. Phần 2 này sẽ đi vào cách hack lại dữ liệu đó. Như bạn đã biết mã hoá bằng mật khẩu là một phương pháp mã hoá dữ liệu cơ bản chỉ sử dụng đến mật khẩu và có thể giải mã với cùng mật khẩu đó. Giờ hãy giả dụ chúng ta quên mất mật khẩu đã đặt và cần phải khôi phục lại dữ liệu như ban đầu. Bước 1 Mã hoá dữ liệu theo phương pháp mã hoá bằng mật khẩu select EncryptedData EncryptByPassPhrase MAK 123456789 Kết quả EncryptedData 0x01000000F75D553409C74570F6DDBCADA53FD489DDD52D92770100505 65ADF30F244F8CC Bước 2 Tạo thủ tục sử dụng để khôi phục lại dữ liệu đã má hoá. Thủ tục này sẽ sử dụng hàm DecryptByPassPhrase để giải mã dữ liệu và hiển thị lên mật khẩu. USE Master GO Object StoredProcedure dbo . hack_encryption Script Date 12 18 2007 18 18 36 IF EXISTS SELECT FROM sys.objects WHERE object_id OBJECT_ID N dbo . hack_encryption AND type in N P N PC DROP PROCEDURE dbo . hack_encryption GO set nocount on SET CONCAT_NULL_YIELDS_NULL OFF go USE Master GO Object StoredProcedure dbo . hack_encryption Script Date 12 18 2007 18 18 55 SET ANSINULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE procedure dbo . hack_encryption @encryptedtext varbinary max as declare @password varchar 6 declare @i int declare @j int declare @k int declare @l int declare @m int declare @n int set @i -1 set @j -1 set @k -1 set @l -1 set @m -1 set @n -1 set @password while @i 255 begin while @j 255 begin while @k 255 begin while @l 255 begin while @m 255 begin while @n 255 begin set @password isnull char @i isnull char @j isnull char @k isnull char @l isnull char @m isnull char @n if convert varchar 100 DecryptByPassPhrase ltrim rtrim @password @encryptedtext is not null begin print This is the Encrypted text @password set @i 256 set @j 256 set @k 256 set @l 256 set @m 256 set @n 256 print The actual data is convert varchar 100 .