C# aes加密解密byte數組

using System.Security.Cryptography;
using System.Text;namespace AESStu01;public class AesHelper
{// AES加密密鑰和向量(需要保密)  private static readonly string Key = "";//16長度字符串+數字混合private static readonly string IV = "";//16長度字符串+數字混合// 加密字節數組  public static byte[] Encrypt(byte[] plainBytes){using (Aes aesAlg = Aes.Create()){aesAlg.Key = Encoding.UTF8.GetBytes(Key);aesAlg.IV = Encoding.UTF8.GetBytes(IV);ICryptoTransform encryptor = aesAlg.CreateEncryptor(aesAlg.Key, aesAlg.IV);using (MemoryStream msEncrypt = new MemoryStream()){using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)){csEncrypt.Write(plainBytes, 0, plainBytes.Length);csEncrypt.Close();}return msEncrypt.ToArray();}}}// 解密字節數組  public static byte[] Decrypt(byte[] cipherBytes){using (Aes aesAlg = Aes.Create()){aesAlg.Key = Encoding.UTF8.GetBytes(Key);aesAlg.IV = Encoding.UTF8.GetBytes(IV);ICryptoTransform decryptor = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV);using (MemoryStream msDecrypt = new MemoryStream()){using (CryptoStream csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Write)){csDecrypt.Write(cipherBytes, 0, cipherBytes.Length);csDecrypt.Close();}return msDecrypt.ToArray();}}}
}

測試

using AESStu01;var orginData = new byte[]
{1, 2, 3, 4, 5
};
Console.WriteLine("AES加密");
var enData = AesHelper.Encrypt(orginData);
Console.WriteLine("加密后的的數據");
Console.WriteLine(string.Join(",",enData));
var deData = AesHelper.Decrypt(enData);
Console.WriteLine("解密后的的數據");
Console.WriteLine(string.Join(",",deData));

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/716216.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/716216.shtml
英文地址,請注明出處:http://en.pswp.cn/news/716216.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

LeetCode--42

42. 接雨水 給定 n 個非負整數表示每個寬度為 1 的柱子的高度圖,計算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 輸入:height [0,1,0,2,1,0,1,3,2,1,2,1] 輸出:6 解釋:上面是由數組 [0,1,0,2,1,0,1,…

PackagingTool_x64_v2.0.1.0圖片轉檔打包二進制文件合并字庫生成圖片軟件介紹

繼去年12月份發布的打包軟件PackagingTool v1.4.0.2之后,今年再度投入精力,完善了軟件功能,同時開發了幾個更加實用的工具,可助力UI界面的設計開發。當前最新版本為PackagingTool_x64_v2.0.1.0,該版本主界面如下&#…

Windows操作系統中各種功能、快捷鍵

目錄 引言一、系統1.任務管理器(當前進程屬性)2.畫圖板3.計算器4.CMD命令行窗口5.控制面板6.記事本7.寫字板 二、瀏覽器1.打開開發者工具2.頁面搜索 三、AcWing1.替換2.對多處進行相同操作3.光標變為下劃線 引言 由于本專業是計算機專業,所以…

Spring Cloud中,Eureka常見問題總結

Spring Cloud中,Eureka常見問題總結。 指定Eureka的Environment 1eureka.environment: 指定環境參考文檔:Configuring Eureka Netflix/eureka Wiki GitHub 指定Eureka的DataCenter 1eureka.datacenter: 指定數據中心參考文檔:Configuring …

SpringBoot:Invalid bound statement (not found)的原因和解決方案

🐓 報錯信息: (無效綁定聲明)找不到 解析: 你的mapper實例對象和對應的mapper.xml對象未找到 🐓 排查: 情況一: 1.排除相對應的mapper實例對象路徑是否正確 查看相對應的mapper中…

unity3d中單例模式兩種簡單寫法與對比

一、 public class UlManager {private static UlManager instance;private void Awake(){if(instance ! null)Destroy(this);else instance this;} }二、 public class UlManager {private static UlManager instance;public static UlManager Instance{get{if (instance …

ChatGPT聊YOLO

最近ChatGPT大伙,其概括摘要能力非常強。YOLO系列算法也是目標檢測領域非常重要的一個研究路線,那么ChatGPT是如何看待各個YOLO算法的呢?那我們去問問它如何看待各個版本的YOLO。 截止到2021年9月,YOLOv6尚未發布。因此&#xff0…

類復習【C#】

【訪問級別】【修飾】【返回類型】 類名 : 【被繼承類】【被繼承接口】 { 字段; 屬性; 默認構造器;// 無參構造器 有參構造器; 私有方法; public 公共方法; } 修飾: 修飾符【C#】-CSDN…

pycharm實現上傳excel生成word

下載需要的依賴包 pip install openpyxl python-docx flaskmain.py文件 from flask import Flask, request, render_template from openpyxl import load_workbook from docx import Documentapp Flask(__name__, template_foldertemplates)app.route(/) def index():return…

小程序面試題:js、vue、uni、小程序的頁面傳參方式區別

js、vue、uni、小程序的頁面傳參方式區別? 1、 js傳參 通過location.href跳轉傳參和接收參數,url后面拼接參數來進行跳轉傳參。 2、 vue傳參 可以通過標簽router-link的to屬性跳轉傳參,也可以通過事件里的this.$router.push跳轉傳參。傳參有…

寒假作業Day 03

寒假作業Day 03 一、選擇題 在C語言中,字符型指針char *p;通常用于指向字符數組(即字符串)的首字符。對于給定的選項,我們來分析每一個選項是否可以將字符串正確地賦值給p: A: pgetchar(); getchar()函數從標準輸入讀…

K8S—Pod控制器

目錄 1.什么是POD控制器 2.POD控制器有幾種類型 3.POD與控制器之間的關系 4.示例 4.1 Deployment 4.2 SatefulSet ①為什么要有headless? ②為什么要有volumeClainTemplate? ③服務發現:就是應用服務之間相互定位的過程。 ④K8S里服…

圖的簡單介紹

定義及術語 G(V,E):圖G的頂點集為V,邊集為E。分為有向圖和無向圖兩類。 頂點的度:與該結點相連的邊的條數。 出度:頂點的出邊條數 入度:頂點的入邊條數 頂點的權值稱為點權,邊的權值稱為邊權。 存儲 1.鄰…

SpringCache【緩存接口返回值信息】【前端訪問后端,后端訪問數據庫(可以緩存這個過程,前端訪問后端,保存記錄,下次訪問直接返回之前的數據)】

SpringCache 針對不同的緩存技術需要實現不同的CacheManager:注解入門程序CachePut注解CacheEvict注解Cacheable注解 Spring Cache是一個框架,實現了基于注解的緩存功能,只需要簡單地加一個注解,就能實現緩存功能,大大…

Mongodb基礎(node.js版)

一、Mongodb 介紹 Mongodb 是一個文檔數據庫,以文檔形式存儲數據,格式類似于 JSON 與 Mysql 的特點及選型對照 MongodbMysql關系類型非關系型關系型存儲類型文檔存儲(類似于寫 Word )表格存儲 (類似于寫 Excle&…

Java玩轉《啊哈算法》之模擬鏈表

人應該支配習慣,而絕不是讓習慣支配人。一個人要是不能改掉壞習慣,那么他就一文不值。 目錄 緣代碼地址模擬鏈表創建遍歷打印插入插入優化 完整代碼 緣 各位小伙伴們好呀!本人最近看了下《啊哈算法》,寫的確實不錯。 但稍顯遺憾…

【C++】string 類 ( 上)

標準庫中的string類 注意: 1. string是表示字符串的字符串類 2. 該類的接口與常規容器的接口基本相同,再添加了一些專門用來操作string的常規操作。 比特就業課 3. string在底層實際是:basic_string模板類的別名,typedef basi…

python爬蟲之selenium知識點記錄

selenium 一、前期準備 1、概述 selenium本身是一個自動化測試工具。它可以讓python代碼調用瀏覽器。并獲取到瀏覽器中加載的各種資源。 我們可以利用selenium提供的各項功能。 幫助我們完成數據的抓取。 2、學習目標 掌握 selenium發送請求,加載網頁的方法 掌…

Stable-Diffusion ubuntu服務器部署,報錯解決方法(小白教程)

Stable Diffusion是一個深度學習模型,專注于生成高質量的圖像。它由CompVis團隊與Stability AI合作開發,并在2022年公開發布。這個模型使用文本提示(text prompts)生成詳細、逼真的圖像,是目前人工智能圖像生成領域的一…

逆向案例四:360k靜態和精靈數據動態AES解密,用js的方法

一、360K 網頁鏈接:https://www.36kr.com/p/2672600261670407 頁面中有靜態的需要解密的內容,確定html包,確定方法 1.1方法步驟 在下方的搜索中輸入decrypt(或者關鍵字window.initialState ,進入js文件 在AES.decrypt處打上斷點&#xff0…