尝试使用gocryptfs实现大模型加密部署
type
status
date
slug
summary
tags
category
icon
password
契机
最近公司需要把大模型部署到三方公司服务器,当然不能让三方公司搞到模型的源文件。由于用transformers框架加载模型,输入参数直接就是模型的目录,所以传统的文件加密有点难搞,所以尝试使用gocryptfs目录加密,过程很曲折,结果也一般,此文不会作为最终的加密部署方案,仅仅记录下研究历程。
尝试gocryptfs
此时目录文件如下



使用py读取加密
此时目录

测试代码
存在的问题
在模型加载的期间,此时plain目录是所有人可见的


- 在模型加载的期间,此时plain目录是所有人可见的,虽然只有几秒但还是不保险
- 并且如果在模型加载期间直接kill -9,此时明文目录不会被正常卸载
总结
- 为了避免模型加载被看见,只有混淆挂载,多挂载一些无效目录给破解用户造成困扰比如/tmp/xasdda,/var,/root之类的
- 用户是甲方,所以大概率有root权限,采用用户目录权限的方法暂时不考虑
- py代码还需要做加密,这个也比较难搞,除非写成C++
- 密码应该std键盘输入,或者其他io输入形式,避免泄漏
- 最理想还是要改写transformers加载模型的函数?
- 或者使用其他的框架部署?
- 对付技术一般的公司或许也足够了!
写到最后
Last update: 2025-06-04