不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學習啦>論文大全>技術(shù)論文>

淺談電子商務(wù)安全技術(shù)論文

時間: 家文952 分享

  電子商務(wù)安全技術(shù)基礎(chǔ)就是大數(shù)計算。所謂大數(shù)指的是超出計算機字長的一種數(shù)值計算方式,小編整理了淺談電子商務(wù)安全技術(shù)論文,歡迎閱讀!

  淺談電子商務(wù)安全技術(shù)論文篇一

  電子商務(wù)安全技術(shù)

  摘要:今天電子商務(wù)安全技術(shù)主要指的是交易對象的身份認證,交易過程的安全。安全技術(shù)的基礎(chǔ)就是大數(shù)運算。例如RSA數(shù)字簽名算法它的安全性就是建立在大數(shù)計算上,該數(shù)字簽名算法的數(shù)據(jù)安全長度為1024位,該長度遠遠超過了計算機的字長,所以在處理過程中無法使用單變量直接運算,而必須設(shè)計出相應(yīng)的算法,實現(xiàn)大數(shù)運算。本文給出大數(shù)無符號整數(shù)四則運算(大數(shù)加減乘除)。

  關(guān)鍵詞:電子商務(wù) 安全技術(shù) 四則運算 VB程序源碼

  中圖分類號:TP393.08 文獻標識碼:A 文章編號:1007-9416(2013)10-0200-03

  1 前言

  電子商務(wù)安全技術(shù)基礎(chǔ)就是大數(shù)計算。所謂大數(shù)指的是超出計算機字長的一種數(shù)值計算方式,例如使用VB設(shè)計程序時數(shù)據(jù)是保存在變量中,使用的變量分為不同類型,其中包括字節(jié)型Byte占用一個字節(jié),整型Integer占用兩個字節(jié),長整型Long占用四個字節(jié),雙精度Double占用八個字節(jié)。所以使用變量表示數(shù)據(jù)或進行數(shù)據(jù)運算時最大的數(shù)據(jù)使用Double型占用八個字節(jié)共64Bits,如果處理的數(shù)據(jù)長度在64Bits以下可以直接使用變量直接進行運算,如果處理的數(shù)據(jù)長度超出64Bits,就無法使用變量直接進行運算,而必須設(shè)計出相應(yīng)的算法模型。

  2 二進制整型數(shù)組

  數(shù)制是數(shù)據(jù)表示的一種方式。在生活當中我們通常使用的數(shù)制是十進制,而計算機中使用的是二進制,在程序設(shè)計時還可能用到八進制或十六進制。對同一個數(shù)值可以用不同的數(shù)制表示方式。

  對比不同數(shù)制數(shù)值的運算,十進制手工計算比較常用,而使用計算機進行計算時十進制就非常麻煩,解決的辦法就是使用二進制數(shù)據(jù)。在上一篇論文《任意長度數(shù)制轉(zhuǎn)換》當中闡述了二進制和十進制之間的轉(zhuǎn)換,其中子程序Longdtob是將十進制數(shù)據(jù)轉(zhuǎn)換成二進制數(shù)據(jù),子程序Longbtod是將二進制數(shù)據(jù)轉(zhuǎn)換成十進制數(shù)據(jù)。這兩個轉(zhuǎn)換子程序是在不同數(shù)制字符串之間的轉(zhuǎn)換,但是這種轉(zhuǎn)換的字符串數(shù)據(jù)還不能用于計算,為此我們必須對計算用的數(shù)據(jù)進行如下處理:

  本文設(shè)計的算法模型是采用二進制整型數(shù)組來保存數(shù)據(jù)。

  數(shù)組定義語句為Dim mva(2050) as integer。數(shù)組名為mva,數(shù)組元素個數(shù)為2050,在此元素的個數(shù)就是表示二進制數(shù)值數(shù)據(jù)的長度。如果需要可以增加元素個數(shù),這樣就達到增加處理數(shù)據(jù)的長度。每一個數(shù)組元素值只有1或0兩個。

  下面是兩個轉(zhuǎn)換子程序,一個是二進制字符串轉(zhuǎn)二進制整型數(shù)組,另一個是二進制整型數(shù)組轉(zhuǎn)二進制字符串。

  (1)二進制字符串轉(zhuǎn)二進制整型數(shù)組子程序。

  轉(zhuǎn)換子程序定義

  Public Sub binstobinv(ByVal vs As String, ByVal sl As Integer, ByRef binv() As Integer, ByRef sst0 As Integer, ByRef sed0 As Integer, ByRef scrt As String)

  Dim i As Integer, j As Integer

  sst0 = sed0 - sl + 1

  j = sed0 - sst0 + 1

  For i = sed0 To sst0 Step -1

  binv(i) = Val(Mid(vs, j, 1))

  j = j - 1

  Next i

  scrt = "S"

  End Sub

  二進制字符串轉(zhuǎn)二進制整型數(shù)組子程序調(diào)用:

  bins =”1101”

  binl = Len(bins)

  st0 = 1

  ed0 = 2050

  Call binstobinv(bins,binl,binv(),st0,ed0,svrt)

  子程序運算結(jié)果

  Binv(2047)=1

  Binv(2048)=1

  Binv(2049)=0

  Binv(2050)=1

  st0=2047

  ed0=2050

  (2)二進制整型數(shù)組轉(zhuǎn)二進制字符串子程序。

  轉(zhuǎn)換子程序定義

  Public Sub binvtobins(ByRef binv() As Integer,ByVal sst0 As Integer,ByVal sed0 As Integer,ByRef vs As String,ByRef vsl As Integer,ByRef scrt As String)

  Dim i As Integer

  i = sst0

  vs = ""

  vsl = 0

  Do

  If binv(i) <> 0 And vsl = 0 Then

  vsl = sed0 - i + 1

  End If

  If binv(i) = 0 And vsl = 0 Then

  Else

  If binv(i) = 0 Then

  vs = vs + "0"

  Else

  vs = vs + "1"

  End If

  End If

  i = i + 1

  If i > sed0 Then

  Exit Do

  End If

  Loop

  If sst0 = sed0 And binv(sst0) = 0 Then vs = "0"   If sst0 = sed0 And binv(sst0) = 1 Then vs = "1"

  scrt = "S"

  End Sub

  二進制整型數(shù)組轉(zhuǎn)二進制字符串子程序調(diào)用:

  St0=2046

  ed0 = 2050

  binv(2046)=1

  binv(2047)=0

  binv(2048)=1

  binv(2049)=1

  binv(2050)=1

  Call binvtobins(binv(), st0, ed0, binsv, binlv, svrt)

  子程序運算結(jié)果

  Binsv=”10111”

  Blnlv=5

  用二進制整型數(shù)組用來保存任意長度二進制數(shù)據(jù),運算的時候也使用二進制整型數(shù)組。

  3 無符號整型四則運算

  數(shù)學中數(shù)值的基本運算指的是四則運算,也就是常說的加減乘除運算,在運算除法時還可以得到一個模。在計算機中進行程序設(shè)計時數(shù)據(jù)運算的復(fù)雜程度不一樣,十進制最復(fù)雜,而使用二進制最為簡便。

  (1)加法子程序Longadd。

  1101 vad1(2050)被加數(shù)

  + 110 vad2(2050)加數(shù)

  10011 vad0(2050)結(jié)果和

  1100 mc是進位

  加法子程序調(diào)用:

  vad1(2047)=1 被加數(shù)

  vad1(2048)=1

  vad1(2049)=0

  vad1(2050)=1

  sst1=2047

  sed1=2050

  vad1(2048)=1 加數(shù)

  vad1(2049)=1

  vad1(2050)=0

  sst2=2048

  sed2=2050

  Call longadd(vad1(), sst1, sed1, vad2(), sst2, sed2, vad0(), sst0, sed0, svrt)

  運算結(jié)果

  vad0(2046)=1 和

  vad0(2047)=0

  vad0(2048)=0

  vad0(2049)=1

  vad0(2050)=1

  sst0=2046

  sed0=2050

  (2)減法子程序Longsub。

  110 mc借位

  1101 vad1()被減數(shù)

  - 110 vad2()減數(shù)

  111 vad0()結(jié)果差

  使用此模型時被減數(shù)要大于等于減數(shù)。

  減法計算過程子程序Longsub調(diào)用:

  vad1(2047)=1 被減數(shù)

  vad1(2048)=1

  vad1(2049)=0

  vad1(2050)=1

  sst1=2047

  sed1=2050

  vad2(2048)=1 減數(shù)

  vad2(2049)=1

  vad2(2050)=0

  sst2=2048

  sed2=2050

  Call longsub(vad1(),sst1,sed1,vad2(),sst2,sed2,vad0(),sst0,sed0,svrt)

  運算結(jié)果

  Vad0(2048)=1 差

  Vad0(2049)=1

  Vad0(2050)=1

  Sst0=2048

  Sed0=2050

  (3)乘法子程序Longmul。

  1101 vad1(2050)被乘數(shù)

  x 110 vad2(2050)乘數(shù)

  0000 smm(2050,2050)中間結(jié)果

  1101

  + 1101 縱向累加得到乘積

  1001110 vad0(2050)積

  在計算乘法時使用一個二進制整型二維數(shù)組smm()保存中間結(jié)果。在計算時縱向保存每一個乘數(shù)數(shù)位乘上被乘數(shù),填寫好數(shù)據(jù)以后從個位向左縱向相加得到乘法的積。

  乘法計算過程子程序Longmul調(diào)用:

  vad1(2047)=1 被乘數(shù)

  vad1(2048)=1

  vad1(2049)=0

  vad1(2050)=1

  sst1=2047

  sed1=2050

  vad2(2048)=1 乘數(shù)

  vad2(2049)=1

  vad2(2050)=0

  sst2=2048

  sed2=2050

  Call longmul(vad1(),sst1,sed1,vad2(),sst2,sed2,vad0(),sst0,sed0,svrt)

  運算結(jié)果

  vad0(2044)=1 積

  vad0(2045)=0

  vad0(2046)=0

  vad0(2047)=1

  vad0(2048)=1

  vad0(2049)=1

  vad0(2050)=0

  Sst0=2044   Sed0=2050

  (4)除法子程序Longdiv。

  vads(2050) 商

  vad2(2050)除數(shù) 1101 vad1(2050)被除數(shù)

  vady(2050) 余數(shù)(模)

  除法計算過程:

  用vad2()與vad1()逐段進行比較,小于等于時商1,大于時商0(商vads()),vady()在除不盡的時候保存余數(shù)(也被稱作模)。

  除法子程序Longdiv調(diào)用:

  vad1(2043)=1 被除數(shù)

  vad1(2044)=1

  vad1(2045)=1

  vad1(2046)=1

  vad1(2047)=0

  vad1(2048)=0

  vad1(2049)=0

  vad1(2050)=1

  sst1=2043

  sed1=2050

  vad2(2047)=1 除數(shù)

  vad2(2048)=1

  vad2(2049)=0

  vad2(2050)=1

  sst2=2047

  sed2=2050

  Call longdiv(vad1(),sst1,sed1,vad2(),sst2,sed2,vads(), vssts, vseds, vady(), vssty, vsedy, svrt)

  運算結(jié)果

  vads(2046)=1 商

  vads(2047)=0

  vads(2048)=0

  vads(2049)=1

  vads(2050)=0

  vssts=2046

  vseds=2050

  vady(2048)=1 余

  vady(2049)=1

  vady(2050)=1

  vssty=2048

  vsedy=2050

  4 結(jié)語

  大數(shù)運算是通過設(shè)計的算法進行加減乘除四則運算,本文設(shè)計的算法是采用二進制整型數(shù)組保存長度超出計算機字長的數(shù)據(jù)。文中數(shù)組的長度決定了處理的二進制數(shù)據(jù)數(shù)值的大小,本文的數(shù)組長度是2050個二進制數(shù)位,如果需要可以任意增加數(shù)組的長度,只要計算機的內(nèi)存足夠大。目前我們使用的計算機基本上都能夠滿足這個要求,四則運算的難點是除法,如果使用十進制非常復(fù)雜,相對來講二進制相對來講要容易一些。

  當前論文是系列論文的第二篇“任意長度數(shù)值無符號整數(shù)四則運算”,上一期《數(shù)字技術(shù)與應(yīng)用》發(fā)表了“任意長度數(shù)值數(shù)制轉(zhuǎn)換”。后續(xù)論文包括第三篇“任意長度數(shù)值有符號整數(shù)四則運算”。第四篇“任意長度數(shù)值實數(shù)四則運算”。在系列論文全部發(fā)表以后歡迎讀者向作者索取VB程序源碼。希望讀者能夠繼續(xù)關(guān)注《數(shù)字技術(shù)與應(yīng)用》。

  參考文獻

  [1]衷仁保著.《計算機代數(shù)學》.科學出版社.

  [2]BruceSchneier著,吳世忠譯.《應(yīng)用密碼學》.機械工業(yè)出版社.

  [3]馮萍著.《匯編語言與接口技術(shù)》.機械工業(yè)出版社.

  [4]Mohan Atreya著,賀軍等譯.《數(shù)字簽名》.清華大學出版社.

點擊下頁還有更多>>>淺談電子商務(wù)安全技術(shù)論文

2589894