久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2052|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

關(guān)于SD卡讀寫加密的研究

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:79094 發(fā)表于 2024-7-6 08:29 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
50黑幣
空閑之余研究 手頭有兩張SD卡插上電腦能識別到 提示格式化  但格式化失敗
用DiskGenius 打開顯示扇區(qū)錯誤  經(jīng)研究應(yīng)該是 某些設(shè)備上的加密卡
根據(jù)下面資料 編寫的代碼   不能清除  請有經(jīng)驗的前輩 給與指導(dǎo) 萬分感謝

資料1
卡擦除
使用CMD16設(shè)置Block長度為1;
發(fā)送CMD42命令:0x6A,0x00,0x00,0x00,0x00,0x95;
發(fā)送命令數(shù)據(jù):0x08,0xFF,0xFF;
使用CMD16恢復(fù)原Block長度。

資料2
加密并上鎖
給SD卡加密并上鎖后,SD卡在沒有解鎖的情況下將不能被讀寫4:根據(jù)圖2要上鎖的命令為Bit2=1,設(shè)置密碼的命令為Bit0-1,其它的位設(shè)置為O,即命令碼為Ox05。在SD卡接受CMD42命令字前需要降低SPI的通信速度,這樣才能更好的接受加密指令,SD卡在讀寫數(shù)據(jù)時塊長度(block)為512Byte,但在寫入密碼前應(yīng)通過CMD16命令字設(shè)置block長度為密碼長度(PWD LEN)加上兩個Byte即PWD LEN+2,在加密操作完成后恢復(fù)數(shù)據(jù)塊長度512Byte。以設(shè)置密碼為“123456”為例,加密并加鎖的關(guān)鍵代碼如下:
SPI_SetSpeed (Low)://設(shè)置SPI為低速通信模式
SD_SendCmd(CMD16, Ox08, Oxff);//設(shè)置blcok為8
SD_SendCmd (CMD42, Oxffffff, Ox95):11寫入命令
SD;SPI_WriteByte (Oxfe)://數(shù)據(jù)命令盾牌
SD SPI_ WriteByte(Ox05)://設(shè)置密碼,并給卡加鎖
SD_SPI_WriteByte (Ox06);//密碼長度
SD_SPI_WriteByte (Ox31);//寫入密碼123456
SD_SPI_ Wri'teByte (Ox32);
SD_SPI:WriteByte (Ox33);
SD_SPI-WriteByte( Ox34);
SD SPI_ WriteByte(Ox35);
SD SPI- WriteByte(Ox36);
SD SPI_WriteByte(Oxff)://寫兩字節(jié)的CRC校驗
SD SPI WriteByte(Oxff)
SD SendCmd (CMD16, Ox200, Oxff)://恢復(fù)block
SPI_SetSpeed (High);//恢復(fù)SPI為高速通信模式



這里是根據(jù)參考資料編寫的代碼
unsigned char SD_cmd42()
{  
unsigned char time,temp;
unsigned char cmd16[] = {0x50,0x00,0x00,0x00,0x01,0x01};
unsigned char cmd42[] = {0x6a,0x00,0x00,0x00,0x00,0x95};
SD_CS=0;
time=0;

do
{
   
  temp=SD_Write_Cmd(cmd16);//寫入CMD16
  temp=SD_Write_Cmd(cmd42);//寫入CMD42
  SD_spi_write(0xfe); //起始令牌
  SD_spi_write(0x08); //解除鎖命令碼
  SD_spi_write(0xff); //crc
  SD_spi_write(0xff); //crc
  time++;
  delay(5000); //延時便于觀察循環(huán)次數(shù)
  LED_4 = ~LED_4;//
  if(time==200) //循環(huán)200次
  {
    LED_R = 0;  //錯誤點亮紅led 和第四個led
    LED_4 = 0;
      return 1;  //結(jié)束程序并返回1 寫入失敗
  }
}while(temp!=0x00);//響應(yīng)r1  這里不確定是不是0x00  知道的請告知下
LED_4 = 0;//正常點亮第四個led


SD_CS=1;
SD_spi_write(0xff); //按照SD卡的操作時序在這里補(bǔ)8個時鐘
return 0;//返回0,
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:43600 發(fā)表于 2024-7-7 02:46 | 只看該作者
一般都是針對檔案來加密,對於sd的底層操作來做加密,恐怕是專屬某些廠商的非國際標(biāo)準(zhǔn)操作,除了花錢請那些廠商來處理,否則恐怕無人可解。
回復(fù)

使用道具 舉報

板凳
ID:79094 發(fā)表于 2024-7-7 21:47 | 只看該作者
hclin 發(fā)表于 2024-7-7 02:46
一般都是針對檔案來加密,對於sd的底層操作來做加密,恐怕是專屬某些廠商的非國際標(biāo)準(zhǔn)操作,除了花錢請那些 ...

感謝回復(fù)  這個是SD卡自帶的一項功能簡單來說就是 打開sd卡時要輸入密碼    用cdm42 增加密碼 或是清除密碼   
回復(fù)

使用道具 舉報

地板
ID:844772 發(fā)表于 2024-7-8 10:08 | 只看該作者
如果研究這個加密原理,意義不大啊,這個加密沒有數(shù)學(xué)加持,難度不大;如果為了格式化可以用行命令處理或干脆使用三方軟件,它改寫了目錄扇區(qū),沒法高級格式化了。
回復(fù)

使用道具 舉報

5#
ID:79094 發(fā)表于 2024-7-8 13:08 | 只看該作者
glinfei 發(fā)表于 2024-7-8 10:08
如果研究這個加密原理,意義不大啊,這個加密沒有數(shù)學(xué)加持,難度不大;如果為了格式化可以用行命令處理或干 ...

感謝回復(fù)  確實是只想格式化成正常的sd卡
命令行試過不行
有什么軟件推薦下可以嗎
回復(fù)

使用道具 舉報

6#
ID:69038 發(fā)表于 2024-7-8 15:03 | 只看該作者
直接用DiskGenius 重建分區(qū)一下就OK了。
那怕加密18層都可以,除非是SD卡掛了。。
回復(fù)

使用道具 舉報

7#
ID:79094 發(fā)表于 2024-7-9 08:52 | 只看該作者
zhuls 發(fā)表于 2024-7-8 15:03
直接用DiskGenius 重建分區(qū)一下就OK了。
那怕加密18層都可以,除非是SD卡掛了。。

試過了 提示扇區(qū)錯誤
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲在线 | 午夜在线精品偷拍 | 99亚洲 | 国产永久免费 | 黄色一级大片在线免费看产 | 在线91| 免费毛片网 | 成人av高清在线观看 | 久久久免费少妇高潮毛片 | 人人操日日干 | 91免费版在线观看 | 久久综合九色综合欧美狠狠 | 亚洲一区二区三区视频 | 91九色麻豆 | 欧美一区视频在线 | 久久一区 | 欧美 日本 国产 | 伊人网影院 | 国产精品成人一区二区三区 | 欧美精品一区在线发布 | 午夜在线 | 蜜臀av日日欢夜夜爽一区 | 久久久日韩精品一区二区三区 | 欧美乱大交xxxxx另类电影 | 成人水多啪啪片 | 毛片一区二区三区 | 91精品国产综合久久小仙女图片 | 欧美中文字幕一区二区三区 | 欧美日韩一区二区在线播放 | 日韩一区二区三区视频在线观看 | 免费看一级毛片 | 国产一二三区精品视频 | av中文字幕在线观看 | 特级特黄特色的免费大片 | 国产在线精品一区二区 | 午夜精品久久久久久久星辰影院 | 日韩在线不卡 | 亚洲国产成人在线视频 | 久久久久久免费毛片精品 | 国产精品亚洲二区 | 免费在线观看av的网站 |