不想被别人“看到”,怎么办?

codayssss 2003-05-13 09:53:22
表中我放了个密码列,如果像一般的话,只要浏览到这个表,就能看到了。
但管理员能进行修改,修改后能否使它不能被看到(像是变一段乱七八糟的字符什么的)。
...全文
54 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
happydreamer 2003-05-14
  • 打赏
  • 举报
回复
--SQL SERVER 本身也提代加密密码的函数:
--pwdencrypt ,pwdcompare


--加密:
declare @logintable table(username varchar(20),passwd varbinary(256))
insert @logintable(username,passwd) values('yourname',pwdencrypt('123456'))

declare @pwd varbinary(256)

select @pwd=passwd from @logintable where username='yourname'
--比较:
if pwdcompare('12356',@pwd)=1
print 'true'
else
print 'false'

select * from @logintable





declare @tt0 int,@tt1 int,@tt2 int,@tt3 varchar(30),@ttkey int
declare @role tinyint
declare @new char(30)

select @new=要加密数据

select @ttkey=convert(int,(@tt2/@tt0))
select @tt3=''
select @tt0=len(@new)

select @tt1=1
while @tt1<=@tt0
begin
select @tt2=ascii(substring(@new,@tt1,1))^(@ttkey+@tt1)
--if char(@tt2)="'"
-- select @tt3=@tt3+'$'
--else
begin
select @tt3=@tt3+char(@tt2)

end
select @tt1=@tt1+1
end

select @tt3 -加密结果
jeansure 2003-05-13
  • 打赏
  • 举报
回复
你可以在输入数据之后采用xor方式加密,进入的数据就是一些其他数据,出来后就再用xor解密
codayssss 2003-05-13
  • 打赏
  • 举报
回复
因为我是新手,所以你们说的,我不太清楚具体代码要怎么写?
pengdali 2003-05-13
  • 打赏
  • 举报
回复
CREATE TABLE Users (
UserID Varchar(10),
UserPW Varchar (20))

INSERT INTO USERS values('TestUser1',ENCRYPT('TestPW1'))
INSERT INTO USERS values('TestUser2',ENCRYPT('TestPW2'))
INSERT INTO USERS values('TestUser3',ENCRYPT('TestPW3'))
INSERT INTO USERS values('TestUser4',ENCRYPT('TestPW4'))

SELECT * from Users where UserID = 'TestUser2'
and UserPW = ENCRYPT('TestPW2')

--不区分大小写
INSERT INTO USERS values('TestUser1',ENCRYPT(UPPER('TestPW1')))
SmileSkyNet 2003-05-13
  • 打赏
  • 举报
回复
加密之后存到表中,用时再解密取出来!!!
CrazyFor 2003-05-13
  • 打赏
  • 举报
回复
自己加密啊,比如传换成ASCII码*XX就行了。

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧