欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

用VBS实现的凯撒密码算法

程序员文章站 2022-04-10 13:37:18
在密码学中,恺撒密码(或称恺撒加密、恺撒变换)是一种最简单且最广为人知的加密技术。它是一种替换加密的技术,明文中的所有字母都在字母表上向後(或向前)按照一个固定数目进行偏移...
在密码学中,恺撒密码(或称恺撒加密、恺撒变换)是一种最简单且最广为人知的加密技术。它是一种替换加密的技术,明文中的所有字母都在字母表上向後(或向前)按照一个固定数目进行偏移後被替换成密文。例如,当偏移量是3的时候,所有的字母a将被替换成d,b变成e,以此类推。这个加密方法是以恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系。

例如,当偏移量是左移3的时候(解密时的密钥就是3):

复制代码 代码如下:

明文字母表:abcdefghijklmnopqrstuvwxyz
密文字母表:defghijklmnopqrstuvwxyzabc


以上都是废话啦,最近在教一个小朋友vbs,给她出了一道题,让她实现凯撒密码算法,不过貌似有点难了。google了一下凯撒密码,出来的基本都是c和java的实现,还是我自己写吧。

复制代码 代码如下:

function caesar(str,offset)
dim length,char,i
caesar = ""
length = len(str)
for i = 1 to length
char = mid(str,i,1)
if char >= "a" and char <= "z" then
char = asc("a") + (asc(char) - asc("a") + offset) mod 26
caesar = caesar & chr(char)
elseif char >= "a" and char <= "z" then
char = asc("a") + (asc(char) - asc("a") + offset) mod 26
caesar = caesar & chr(char)
else
caesar = caesar & char
end if
next
end function

wscript.echo caesar("abcdefghijklmnopqrstuvwxyz",3)


wordpress的默认主题真不好使,代码竟然溢出了,将就着看吧,或者给我推荐一个好看点的主题也行。

原文:http://demon.tw/programming/vbs-caesar.html