- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
具有分区加密功能SD卡固件设计
具有分区加密功能SD卡固件设计 摘要摘要:设计一种基于SD控制器S281的固件,具有外部认证、分区加密功能。利用控制器中内置3DES和AES加密算法,可以实现对数据的硬件加密,具有更高的安全性。介绍控制器的内部结构及固件实现分区加密的原理,并在固件上实现闪存的均衡算法以及坏块管理,保证闪存的合理使用。经过实验测试,该分区加密SD卡在可靠性测试、读写速率测试和功能实现测试上均满足要求
关键词关键词:SD控制器;分区加密;SD固件设计;NAND Flash
DOIDOI:10.11907/rjdk.171096
中图分类号:TP309.7
文献标识码:A文章编号文章编号2017)005016803
0引言
SD卡主要由控制器和闪存芯片组成,其具有体积小、数据传输速率快、可热插拔等优良特性,被广泛应用于便携式设备如电子词典、移动电话、数码相机、汽车导航系统[1]。计算机技术的快速发展使得信息的传递越来越迅速、便捷,同时人们对信息存储介质的安全性要求也越来越高,普通SD卡已不能满足人们对于安全存储的需求。本文设计的SD卡创新性地将SD的存储空间划分为两个分区,分别为普通区和必威体育官网网址区,同一时间只显示一个分区。上电完成后默认显示普通区,若需要切换至必威体育官网网址区则需要通过专用上层软件输入密码完成外部认证。外部认证采用3DES加密算法,数据存储采用目前公认的AES256加密算法[2]。这样不仅满足了普通数据存储的需求,同时满足机密数据保护需求
1硬件架构
1.1总体框架
SD卡主要由存储单元和控制单元组成。本文存储介质采用Micron 4GB NAND Flash存储芯片MT29F32G08CBACA,主控采用华澜微自主研发的符合SD2.0标准的设备控制器S281。本设计总体硬件架构图如图1所示
1.2控制器芯片S281简介
S281固件设计具有一定复杂度,深入理解控制器的内部结构有助于设计出更好的固件。S281拥有一个32bit的嵌入式精简CPU执行算术及逻辑运算,它从ROM和SRAM中获取指令,解码并执行,同时管理CPU及闪存接口的控制和状态信号。CPU控制SD接口、NAND Flash接口、FIFO的总线操作,不同模块间通过不同总线实现数据路由。同时S281控制器内置随机数发生器和硬件加密模块,为后续固件设计提供便利
2固件设计
SD卡的固件主要是辅助或控制硬件完成上电初始化及数据传输[3],而分区加密的SD卡还要在固件上实现分区切换以及全盘数据加密。由于Flash在使用过程中易产生坏块,难以管理,且有擦除次数的限制。本文在固件设计中通过逻辑表动态建立坏块表,完成Flash的坏块管理,根据物理擦除次数选择空块实现Flash的均衡算法,延长闪存的使用周期,实现闪存的合理化使用
2.1?x操作固件设计
SD协议中读命令包括CMD17和CMD18[4],CMD17读取单个数据块到SD接口,而CMD18在指控制器未接收到CMD12(停止命令)前读取多个数据块。当S281接收到CMD17时,首先调用地址解析函数将命令参数中的地址转换成逻辑地址,分别用cluster.logic、block.logic、page.logic代表逻辑簇地址、逻辑块地址和逻辑页地址。再调用地址转换函数建立映射表,通过查找映射表将逻辑地址转换成物理地址,其中映射表包括簇映射表、块映射表和页映射表。根据页映射表中逻辑页所对应的物理页flag(标志位)判断页中是否含有有效数据,即物理页有没有被写过。若页中不存在数据,根据NAND Flash的特性,即页内数据全部为0xFF,则在FIFO中需要将数据传送到SD接口的内存空间,全部用0xFF填充。如flag表明此页已被编辑过,即页中存在有效数据则发送Flash的读命令(00~30h)读取页中的数据,并通过DMA总线将数据传送到FIFO中,此时数据为采用AES256加密的密文,需要调用加解密函数解密FIFO中的数据。最后将FIFO中的数据通过主机数据总线发到SD接口完成单块读操作
当S281接收到CMD18命令后,其操作与CMD17基本一致,只是在没有收到CMD12之前,CMD18固件内部页内逻辑地址会自动增加,并传送数据到SD接口。若页内逻辑地址增加导致需要切换逻辑块或逻辑簇,则需要重新调用地址转换函数建立映射表
2.2写操作固件设计
由于Flash的物理页只能编程一次,不能对物理页多次编写[5],即写入的数据必须是物理页大小的整数倍,所以写操作的固件设计更加复杂。当逻辑页中的数据有部分更新时就需要将新旧数据一起写入物理页中,这就需要在固件上实现Flash的PreCopy和PostCopy两个操作。当写命令的起始逻辑地址不
您可能关注的文档
- 关于建筑材料检测相关问题探究.doc
- 关于强化电力调度监控管理措施思考.doc
- 关于强化企业落实党风廉政建设主体责任对策建议.doc
- 关于建筑给排水环保问题探究.doc
- 关于当前基层消防监督执法调查及思考.doc
- 关于德育原生教育及次生教育思考.doc
- 关于当前中国农村经济发展分析及思考.doc
- 关于思想政治工作及综治工作在企业有机结合相关探究.doc
- 关于思想政治课堂中任务型教学应用分析.doc
- 关于恒温恒湿实验室温度、湿度技术参数检测方法探究.doc
- 2024高考物理一轮复习规范演练7共点力的平衡含解析新人教版.doc
- 高中语文第5课苏轼词两首学案3新人教版必修4.doc
- 2024_2025学年高中英语课时分层作业9Unit3LifeinthefutureSectionⅢⅣ含解析新人教版必修5.doc
- 2024_2025学年新教材高中英语模块素养检测含解析译林版必修第一册.doc
- 2024_2025学年新教材高中英语单元综合检测5含解析外研版选择性必修第一册.doc
- 2024高考政治一轮复习第1单元生活与消费第三课多彩的消费练习含解析新人教版必修1.doc
- 2024_2025学年新教材高中英语WELCOMEUNITSectionⅡReadingandThi.doc
- 2024_2025学年高中历史专题九当今世界政治格局的多极化趋势测评含解析人民版必修1.docx
- 2024高考生物一轮复习第9单元生物与环境第29讲生态系统的结构和功能教案.docx
- 2024_2025学年新教材高中英语UNIT5LANGUAGESAROUNDTHEWORLDSect.doc
文档评论(0)