site logo

Marico's space

最近折腾了一段时间的AI隔离架构,踩了几个坑才把这里面的门道摸清楚。传统的安全方案对付现在的自主AI勒索软件已经开始力不从心了,这篇把我研究的一些思路整理出来,跟大家聊聊怎么设计沙箱环境来应对这种新型威胁。 说白了,自主AI系统和传统恶意软件最大的区别就是:传统软件按套路出牌,而AI能自己思考、动态调整战术。你以为把它关进沙箱就安全了?它可能比你更懂怎么识破这个沙箱。 自主勒索软件威胁向量
这是 Qwen Cloud 黑客松的参赛作品,拿了博客文章奖。项目地址在 GitHub 上,有兴趣可以去看看。 写这篇的原因是觉得这个方向挺有意思的——不是单纯把应用跑起来,而是把迁移过程中的踩坑经验固化成可复用的东西。 为什么做这个 现在的 AI 应用基本都是一个套路:绑死一个云服务商、一个模型、一个 SDK(通常是官方提供的)。这样开发确实方便,直到出问题时才发现麻烦了。 如果哪天某
最近折腾了一下电子护照(eMRTD)阅读库的差分测试,踩了几个安全层面上的坑,这篇把问题说清楚。 一致性测试套件告诉你某个库是否通过了自己的测试用例。但它没法回答一个更根本的问题:两个独立实现的库,在收到完全相同的协议流量时,会不会做出同样的安全决策?ICAO Doc 9303 定义了电子护照应该怎么工作,但你在项目中选择的开源库,决定了你的应用实际会遭遇什么。单元测试通过是一回事,互操作测试是
一致性测试套件只能告诉我们一个库是否通过了自己的测试。它无法回答另一个问题:两个独立实现面对相同的协议流量时,是否会做出相同的决策?ICAO Doc 9303(国际民航组织9303号文件)定义了电子护照应有的行为,但你选择的开源库决定了你的应用程序实际会经历什么。库通过单元测试,整合商通过互操作性测试。但我们停下来太久没问一个更简单的问题:如果两个独立实现接收到完全相同的协议流量,它们会做出相同的
最近踩了几天缓存的坑,发现这玩意儿看起来简单,真要用好,里面的门道比我想的深多了。这篇把第3天的学习整理一下,重点说说缓存失效为什么真的那么难。 回顾 第1天聊了大图(客户端-服务端、扩展性、延迟vs吞吐量),第2天进了数据库(SQL vs NoSQL、复制、分片)。今天的课题本来以为早就懂了:缓存。结果发现我只懂了最容易的那20%。 缓存为什么存在 核心思想很简单:取数据是有代价的(
区块链支付系统标榜透明、快捷、低手续费——但同时也把安全问题的赌注拉到了极致。传统后端出了 bug,大不了服务宕机一会儿。智能合约管着真金白银要是出 bug,资金可能永久打水漂,连撤销键都没有。最近给几个金融科技客户做区块链支付系统,踩了不少坑,这篇把最重要的几条经验捋清楚。 为什么智能合约安全是另一回事 传统 Web 应用的安全逻辑是打补丁:发现漏洞,推送修复,用户更新或服务器重部署。智能合
在Part 3里聊了可观测性,这篇说说自动化这座大山怎么爬。 Azure APIM MCP 现在还是预览版,这意味着什么?你的基础设施即代码(IaC)流水线直接抓瞎: * ARM 模板?不支持 * Bicep?不支持 * Terraform Provider?不支持 * Azure Service Operator(ASO)?也不支持 现实就是这么残酷:标准 IaC 工具一个都用不了
最近折腾 JavaScript 里的 Base64 编码,踩了几个坑,特别是中文字符串直接用 btoa() 直接报错的体验实在太酸爽。这篇把 Base64 的常见坑和实用模式说清楚。 Base64 在 Web 开发里无处不在——JWT 令牌、图片 Data URL、API 载荷、HTTP Basic Auth 头都靠它。但看似简单的 API 其实有不少弯弯绕绕。 BASE64 实际上做了什么
很多人学Docker最大的误区就是还没搞明白底层原理就开始敲命令。比如看到别人跑: docker run nginx 应用起来了,一片祥和,然后就继续往下走了。但你有没有停下来想过:你敲下回车那一瞬间,到底发生了什么? Docker看起来像是在"魔法般"地运行你的应用,但实际上每次都走同一套流程。想象成这个样子: 你 │ ▼ Docker Client(客户端) │ ▼ Docker En
做后端开发的,估计没少被 API 的坑折腾过。字段少了一个、状态码返回错了、高并发下超时了、接口契约改了导致调用方全挂了——这些问题用临时手动测的方式,靠运气能碰上几个,但系统化地测才能真正把它们抓出来。 一套好的 API 测试策略,说白了就是回答三个问题:测什么、谁来测、什么时候跑。把快速检查和慢速套件分开,提交代码时跑轻量级检查,定时或发布前跑完整回归,既能保证覆盖率,又不让每个开发流程都卡
共 303 条, 共 31 页