国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

如何通過(guò)做網(wǎng)站月入上萬(wàn)廣州seo公司品牌

如何通過(guò)做網(wǎng)站月入上萬(wàn),廣州seo公司品牌,成都的建站公司,wordpress自動(dòng)添加圖片alt屬性在Go語(yǔ)言中,crypto/cipher包提供了加密和解密消息的功能。這個(gè)包實(shí)現(xiàn)了各種加密算法,如AES、DES、3DES、RC4等,以及相應(yīng)的模式,如ECB、CBC、CFB、OFB、CTR等。以下是如何使用crypto/cipher包進(jìn)行加密和解密操作的基本步驟&#xf…

在Go語(yǔ)言中,crypto/cipher包提供了加密和解密消息的功能。這個(gè)包實(shí)現(xiàn)了各種加密算法,如AES、DES、3DES、RC4等,以及相應(yīng)的模式,如ECB、CBC、CFB、OFB、CTR等。以下是如何使用crypto/cipher包進(jìn)行加密和解密操作的基本步驟:

  1. 選擇加密算法和模式
    首先,你需要選擇一個(gè)加密算法和一個(gè)工作模式。例如,AES算法與CBC模式的組合是一種常用的選擇。

  2. 生成密鑰和初始化向量(如果需要)
    對(duì)于某些加密模式,如CBC、CFB、OFB等,你需要一個(gè)初始化向量(IV)。此外,你還需要一個(gè)密鑰,它的長(zhǎng)度取決于你選擇的算法。

package usecaseimport ("bytes""context""crypto/aes""crypto/cipher""encoding/base64""fmt""math/rand"
)type Oauth2UseCase struct {key   []byteblock cipher.Block
}
// 實(shí)例化結(jié)構(gòu)
func NewOauth2UseCase() Oauth2UseCase {return &Oauth2UseCase{key: []byte("x1selczyiorss9jmrxllfqhykwkw8hlp")}
}

加密數(shù)據(jù)

func (u *Oauth2UseCase) aesEncrypt(orig string) (string, error) {// 生成隨機(jī)鹽值salt := rand.Intn(25)orig = orig + string(u.key[salt:salt+5])fmt.Println("orig", salt, orig)// 轉(zhuǎn)成字節(jié)數(shù)組origData := []byte(orig)// 分組秘鑰block, err := aes.NewCipher(u.key)if err != nil {return "", err}// 獲取秘鑰塊的長(zhǎng)度blockSize := block.BlockSize()// 補(bǔ)全碼origData = PKCS7Padding(origData, blockSize)// 加密模式blockMode := cipher.NewCBCEncrypter(block, u.key[:blockSize])// 創(chuàng)建數(shù)組cryted := make([]byte, len(origData))// 加密blockMode.CryptBlocks(cryted, origData)//使用RawURLEncoding 不要使用StdEncoding//不要使用StdEncoding  放在url參數(shù)中回導(dǎo)致錯(cuò)誤return base64.RawURLEncoding.EncodeToString(cryted), nil
}

解密數(shù)據(jù)

func (u *Oauth2UseCase) aesDecrypt(cryted string) (string, error) {//使用RawURLEncoding 不要使用StdEncoding//不要使用StdEncoding  放在url參數(shù)中回導(dǎo)致錯(cuò)誤crytedByte, _ := base64.RawURLEncoding.DecodeString(cryted)// 分組秘鑰block, err := aes.NewCipher(u.key)if err != nil {return "", err}// 獲取秘鑰塊的長(zhǎng)度blockSize := block.BlockSize()// 加密模式blockMode := cipher.NewCBCDecrypter(block, u.key[:blockSize])// 創(chuàng)建數(shù)組orig := make([]byte, len(crytedByte))// 解密blockMode.CryptBlocks(orig, crytedByte)// 去補(bǔ)全碼orig = PKCS7UnPadding(orig)return string(orig)[:11], nil
}

處理填充

在加密和解密過(guò)程中,你可能需要對(duì)數(shù)據(jù)進(jìn)行填充和去填充。填充的目的是確保數(shù)據(jù)的大小是加密算法塊大小的倍數(shù)。常見(jiàn)的填充方案有PKCS#7、Zero Padding等。

// PKCS7Padding 補(bǔ)碼
func PKCS7Padding(ciphertext []byte, blocksize int) []byte {padding := blocksize - len(ciphertext)%blocksizepadtext := bytes.Repeat([]byte{byte(padding)}, padding)return append(ciphertext, padtext...)
}// PKCS7UnPadding 去碼
func PKCS7UnPadding(origData []byte) []byte {length := len(origData)unpadding := int(origData[length-1])return origData[:(length - unpadding)]
}

以上是使用crypto/cipher包進(jìn)行基本加密和解密操作的步驟。在實(shí)際應(yīng)用中,你可能需要結(jié)合其他安全實(shí)踐,如使用安全的隨機(jī)數(shù)生成器、管理密鑰、處理錯(cuò)誤等,以確保加密過(guò)程的安全性。此外,對(duì)于某些應(yīng)用場(chǎng)景,你可能還需要考慮使用更高級(jí)的加密庫(kù),如crypto/nacl或golang.org/x/crypto,它們提供了更多的加密算法和更高級(jí)的安全性。

// 加密數(shù)據(jù),如手機(jī)號(hào)
code, err := u.aesEncrypt(phone)
//解密數(shù)據(jù)
phone, err := u.aesDecrypt(code)
http://m.aloenet.com.cn/news/1212.html

相關(guān)文章:

  • 溫州建設(shè)網(wǎng)站百度上??偛?/a>
  • 天津企商網(wǎng)站建設(shè)公司關(guān)鍵詞優(yōu)化按天計(jì)費(fèi)
  • 網(wǎng)站如何做銀聯(lián)在線(xiàn)支付大連中小企業(yè)網(wǎng)絡(luò)營(yíng)銷(xiāo)
  • 一般做外貿(mào)上什么網(wǎng)站熱狗網(wǎng)站排名優(yōu)化外包
  • 建設(shè)網(wǎng)站com艾滋病阻斷藥
  • 網(wǎng)站robots.txt檢測(cè)網(wǎng)站關(guān)鍵詞在線(xiàn)優(yōu)化
  • 用html5做的個(gè)人網(wǎng)站網(wǎng)絡(luò)營(yíng)銷(xiāo)試卷及答案
  • python合適做網(wǎng)站嗎海外網(wǎng)絡(luò)推廣方案
  • 做網(wǎng)站圖片百度競(jìng)價(jià)排名系統(tǒng)
  • 網(wǎng)站 默認(rèn)首頁(yè)濟(jì)南seo的排名優(yōu)化
  • 商城開(kāi)發(fā)價(jià)格服務(wù)排名優(yōu)化百度
  • 和先鋒影音和做的網(wǎng)站百度關(guān)鍵詞排名推廣
  • 騎行網(wǎng)站模板網(wǎng)站搭建平臺(tái)
  • wordpress 黃藍(lán) 現(xiàn)代企業(yè)教程seo推廣排名網(wǎng)站
  • 建立網(wǎng)站需要注冊(cè)公司嗎seo引擎優(yōu)化公司
  • 網(wǎng)站做哪些主題比較容易做幽默廣告軟文案例
  • 專(zhuān)做外貿(mào)衣服鞋網(wǎng)站有哪些網(wǎng)址搜索引擎入口
  • 還有什么網(wǎng)站可以做面包車(chē)?yán)涀鲆粋€(gè)網(wǎng)站需要多少錢(qián)大概
  • 福建網(wǎng)站建設(shè)公司交換友情鏈接的意義是什么
  • 常州建設(shè)工程監(jiān)理員掛證網(wǎng)站百度軟件開(kāi)放平臺(tái)
  • 做網(wǎng)站的時(shí)候賣(mài)過(guò)假貨而出過(guò)事搜索引擎優(yōu)化是免費(fèi)的嗎
  • 重點(diǎn)項(xiàng)目建設(shè)網(wǎng)站商業(yè)策劃公司十大公司
  • 營(yíng)銷(xiāo)型網(wǎng)站系統(tǒng)網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃方案
  • 國(guó)內(nèi)做新聞比較好的網(wǎng)站有哪些企業(yè)網(wǎng)站制作公司
  • wordpress漢語(yǔ)公益搜索網(wǎng)站排名優(yōu)化
  • 網(wǎng)站被降權(quán)會(huì)發(fā)生什么長(zhǎng)春網(wǎng)站公司哪家好
  • 廊坊網(wǎng)站快速排名優(yōu)化杭州seo營(yíng)銷(xiāo)
  • 旅游網(wǎng)站開(kāi)發(fā)功能網(wǎng)絡(luò)廣告投放網(wǎng)站
  • 公安部門(mén)網(wǎng)站備案網(wǎng)站產(chǎn)品推廣
  • 政府網(wǎng)站建設(shè)工作匯報(bào)網(wǎng)頁(yè)設(shè)計(jì)和網(wǎng)站制作