首页 > 其他分享 >【接口安全】DataSign解决方案

【接口安全】DataSign解决方案

时间:2024-05-13 21:33:13浏览次数:23  
标签:DataSign 解决方案 dataSign 接口 传输 token

背景

原本的安全方案是在Header中设置接口的userName和password,但是众所周知这跟掩耳盗铃没什么区别,只是应付普通接口扫描式攻击的。

一旦进行抓包,那么header中明文传输的一切都可以被获取。

还有中解决方案是对参数进行加密(或者参数体),但这种方式也存在1、传输内容过大 2、一旦被获取到密钥后(理论上不可能)所有接口都会被扫描到

解决方案

解决重点其实在于如何缩短加密后过长的传输内容。次要目的才是密钥被窃取。

所以通过安全中心授权给一方token(或者别的密钥,永久不变的字符串也可以),对于请求参数体+token进行编码,生成DataSign

调用方完全可以放心将dataSign放入请求体以明文形式传输

被调用方获取到dataSign之后按照约定方式对请求体进行同样步骤的编码,然后进行dataSign的字符串比较

即可实现接口传输的安全性。

如果需要的话,还可以维护授权的token(或永久字符串)来实现身份验证。

标签:DataSign,解决方案,dataSign,接口,传输,token
From: https://www.cnblogs.com/onejay/p/18190051

相关文章

  • 接口自动化AES对称加密为什么密钥key是16位的?
    对称加密AES,加密和解密的密钥是同一个AES是一个分组加密算法,AES有三种密钥长度(128、192、256)比特,常用的是128比特,也就是16位AES常用的加密模式有:ECB,ECB是将明文按块处理,每一块单独加密(除此之外还有好几个,没接触过不列举)那么我的理解是,ECB是按照一个区块16位来进行加密的,这就......
  • Java身份证识别接口集成开发示例,身份证查询接口
    人类是有情感的,人们所接触到的各种事物和信息都会被身体相应器官所接收,然后通过神经元传入大脑继而被识别,然后大脑便会产生对该事物的认知和情绪。人们大多喜欢热情、有趣的事物,对冷冰冰、枯燥、无趣的APP基本是提不起兴趣的。一个好的APP是可以打动人心、能够传递情感的,进而......
  • Java Chassis 3:接口维度负载均衡
    本文分享自华为云社区《JavaChassis3技术解密:接口维度负载均衡》,作者:liubao68。在JavaChassis3技术解密:负载均衡选择器中解密了JavaChassis3负载均衡在解决性能方面提供的算法。这次解密的技术来源于实际客户案例:在客户的微服务系统中,存在很多种不同逻辑的接口,以及特殊......
  • 小成本大保障:中小企业的数据安全解决方案
    在经营预算有限的情况下,中小企业面临着保障数据安全的巨大挑战。数据泄露不仅会导致财务损失,还会损害企业声誉,甚至可能违反数据保护法规。以下是一些成本效益高、实施简便的数据安全解决方案,帮助中小企业在小成本下实现大保障:强化基础安全措施即使是基础的安全措施,也能提供显著......
  • uniapp循环请求接口之后跳转
    if(this.model.caseWorkPartyModelList.length>0){letpromises=[];//用于存储所有异步操作的Promiseletthat=thisthis.model.caseWorkPartyModelList.forEach(async(item,index)=>{......
  • 使用Lambda表达式和接口的简单Java 8 Predicate示例
    大量的Java编程涉及到对真或假值的评估,从条件语句到迭代循环。当您使用JDK的StreamsAPI和Lambda函数时,可以使用备受欢迎的JavaPredicate接口来简化布尔条件的评估。也被称为Java8Predicate(源自引入函数式编程的JDK版本),这个简单的接口定义了五个方法,尽管只有JavaPredicate的t......
  • JPA使用pg数据库时,bool字段不能跨库迁移的解决方案
    首先,大多数人的印象里,hibernate作为一个笨重学习成本高的近乎全自动的框架它的优点就是可以支持很多数据库,但是最近研究发现,java中的boolean类型的字段,在mariadb/mysql中为bit0/1,在sqlserver/oracle中为bit0/1numeric(1,0)check*in(0,1),然而在PG数据库中却是bool,因为pg......
  • 系统IO常用函数接口
    本文整理归纳了几种常用的系统IO的函数借口,以供读者查阅使用目录系统IO与标准IO的区别打开文件:open关闭文件:close文件读取:read文件写入:write位置偏移:lseek系统IO与标准IO的区别1.标准IO可以看成是在系统IO的基础上封装了缓冲机制。2.标准IO在内核中使用链表的管理方式,故返回的......
  • IntelliJ IDEA 打开项目后崩溃的解决方案
    原因:https://youtrack.jetbrains.com/issue/IJPL-59368/IDE-crashes-due-to-chrome-sandbox-is-owned-by-root-and-has-mode-error-when-IDE-is-launching-the-JCEF-in-a-sandbox解决方案:关闭ide.browser.jcef.sandbox.enable配置备份并删除项目根路径下的README文件重新......
  • Java-线程-并发解决方案
    0.背景在[Java-线程-并发]这篇文章中,我们引入了并发场景下的一些问题,并在末尾给出了几种常见的解决方案。1.方案1.1synchronizedsynchronized是Java中的一个关键字,用于提供同步机制,保证多线程环境下对共享资源的安全访问。通过使用synchronized,Java虚拟机(JVM)保证同一时......