专栏/神经网络模型如何加密 (Python)

神经网络模型如何加密 (Python)

2022年03月15日 23:57--浏览 · --点赞 · --评论
killmatt01
粉丝:149文章:1

写在前面: 本专栏仅以onnx以及weights文件举例

    第一次发专栏没什么经验,有什么吐槽和建议本up都收着了。本来是想做成视频形式,后来事情叠事情拖了很久,也没什么兴趣做剪辑特效,就这样了。

    这几年以来,AI 的概念已经火遍大江南北,能用上计算机的各个领域几乎都能用 AI 助力,对于人类来说无论是不喜的还是不用的应该都有所耳闻。那么今天提到的神经网络(https://www.ibm.com/docs/zh/spss-modeler/SaaS?topic=nodes-neural-networks),就属于人工智能的分支之一机器学习的子集。具体的专业知识可以百度、知乎里找,本专栏不再赘述(up主也懒得介绍 鉴于up可怜的知识储备也无法系统性地讲解明白)。

    就应用方面,比较常见的神经网络模型文件格式有 .pt/.pth (PyTorch框架),.weights(.cfg) (Darknet框架),.caffemodel(Caffe框架),.pb(Tensorflow框架) ,.onnx(微软设计的一种针对机器学习所设计的开放式的文件格式)。有些朋友愿意公布自己训练的神经网络模型,那么没问题。但有些朋友做的是商业化或者单纯不想自己辛辛苦苦标注训练出的模型被别人用,这就需要加密了。

    本up当然也有过这方面的迷茫,相信不少人也在或者有寻找过如何加密的方式。其实模型文件就是个二进制文件 (binary file),而加密二进制文件的方式要从网上找就轻松多了。

    比较入门的级别,就是文件重命名。推理框架在读取神经网络模型时方式之一就是从文件读取,那么只要文件名路径名对了就能顺利读取。鉴于Python打包后文件众多的特点(尤其是dll文件),完全可以取一个像模像样的文件名隐藏于众多动态链接库之中,这样别人找也会费点功夫。

    更常用且安全性更高的方式,就是将模型这个二进制文件加密,需要推理时读取并解密到内存再给推理框架读取。比如说OpenCV里的DNN模块,其中读取Darknet框架模型的函数readNetFromDarknet 就包括从缓冲区(buffer)中读取相关配置文件内容以及模型内容的方式。

OpenCV DNN readNetFromDarknet 函数从 buffer 中读取模型及配置内容

再比如微软的onnxruntime或者OpenCV的DNN在读取onnx文件时都允许参数直接输入文件的二进制内容。

onnxruntime推理框架读取模型时参数允许是模型的二进制内容
OpenCV DNN模型同理

    了解这些之后就是下一个问题: 如何加密

    用Python的同学会很幸福,因为有别人写好开源的模块可以直接拿来用于加密。这里给大家介绍 cryptography 模块,简简单单命令行 pip install cryptography -U 即可安装。说明文档里已经给了最基本的示例,足够我们本次使用。

cryptograph 基本使用示例

    到此为止,所有准备工作完成。我们开始lu代码。首先加密部分。

加密模型并保存

接下来是解密读取部分

读取加密模型

    模型的加解密需要注意几点:

1.解密模块的接口不能暴露,否则竞争对手可以很方便的调用解密模块把模型还原。

2.解密模块需要有验证机制,否则竞争对手可以直接使用库文件和加密模型,用库文件去解密模型。

    当然,这里提供的仅仅是针对训练好的模型的一种加解密方式。有能力的朋友可以用其他的库或者自己编写。更多相关可以戳我签名加群交流~

投诉或建议

玻璃钢生产厂家湘西玻璃钢花盆花器中山玻璃钢金色骆驼雕塑浙江杭州玻璃钢抗战主题雕塑像山东玻璃钢牛动物雕塑制作工厂玻璃钢雕塑外观嘉兴商场美陈四川主题公园玻璃钢美陈雕塑江苏大型主题商场美陈价格平湖玻璃钢雕塑订做商场美陈520方案新密太湖石玻璃钢人物雕塑滨州玻璃钢雕塑定制新兴的玻璃钢花盆定制商场门口美陈梧州玻璃钢雕塑制作玻璃钢雕塑功夫熊猫安徽人物玻璃钢雕塑哪家便宜昆明仿铜玻璃钢雕塑价格安陆玻璃钢花盆花器海南玻璃钢雕塑设计装饰商场美陈市场报价灰色玻璃钢花盆图片佛山玻璃钢人物雕塑供货商山西仿铜玻璃钢雕塑生产厂家山西户外玻璃钢雕塑价位南宁玻璃钢卡通雕塑上海秋季商场美陈售价梅州玻璃钢动物雕塑代理商滁州景区玻璃钢雕塑仿铜西式玻璃钢雕塑哪家好香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化