在分析这个部分前,目前我看到DWM1000 的资料,data可以分为blink和一般无线数据,后面有内容我们再扩充, 上面我们已经看到接收到blink触发的事件为 case SIG_RX_BLINK : 一般数据包应该触发的的是 case DWT_SIG_RX_OKAY : 表示接收到一个无线无线数据包,具体怎么解析这个数据包我们一点点分析. 好了,看TAG收到ANCHOR的blink response,这个数据包为一般数据包,具体数据内容我们前面简单列出来了,这里从TAG接收的角度一点点在分析…
更上面ANCHOR发送信息时的RTLS_DEMO_MSG_ANCH_RESP, 我们很快就可以找到如下代码 case RTLS_DEMO_MSG_ANCH_RESP: { 这里面一部分是设置重要变量,一部分是保存ANCHOR发送来的TOF,准备显示出来了,先看这个部分 inst->canprintinfo = 2; inst->tof = 0; memcpy(&inst->tof, &(messageData[TOFR]), 5); inst->newrangean…
我们前面分析过,不论ANCHOR 还是TAG,前面变量的初始化基本都是一样的,只是状态机必须明确区分不同的设备类型.我们从开始看TAG.由于初始化TAG的 testAppState一样初始化为TA_INIT. INST_STATES testAppState ;             int instance_init_s(int mode) TA_INIT case TA_INIT : // printf("TA_INIT") ; switch (inst->mode) {…
接着之前ANCHOR的代码分析,但接收到无线数据,应该执行如下代码 case TA_RX_WAIT_DATA :   //already recive a message                   // Wait RX data //printf("TA_RX_WAIT_DATA %d", message) ; switch (message) { case SIG_RX_BLINK : case DWT_SIG_RX_OKAY : case DWT_SIG_RX_TIMEO…
QT开发内存管理问题: 在linux上提示:底层由于接收到操作系统的信号而停止: 在windows上提示:the inferior stopped because it triggered an exception: 主要是因为内存使用出现错误. 昨天在delete 一个layout时出现了这样的错误,主要原因是使用了函数AddItem. 通过AddItem加入一个弹簧,delete的时候先是delete弹簧,再deletelayout,所以出现这样的错误了. 使用AddItem加入的Item,…
instance_init 函数追下去,绝大多数的代码都在初始化如下结构体 typedef struct { INST_MODE mode; instance_init -ANCHOR //instance mode (tag or anchor) INST_STATES testAppState ; int instance_init_s(int mode) TA_INIT //state machine - current state INST_STATES nextState ; //st…
蓝点DWM1000 模块已经打样测试完毕,有兴趣的可以申请购买了,更多信息参见 蓝点论坛 正文: 室内定位兴起,DWM1000 作为超宽带UWB的代表,在国内用的越来越多,但是可见资料非常少. 一方面是官方代码写的实在有点太差,另一方面是现在国内普及者将自己的代码当作是商业机密,当作是卖点,很少出来分享解析的. 我计划花一段时间来梳理DWM1000 代码,之前稍微接触过一点,感觉还能理解DWM1000 一点思路. 放在这里供大家参考. 作为穷人,目前我淘到一块DWM1000 模块,与我老旧的ST…
根据上面TAG发送的代码,我直接找到如下代码 case RTLS_DEMO_MSG_TAG_POLL: { if(inst->mode == LISTENER)                                                                       { ……不满足条件 } if (!inst->frameFilteringEnabled) { // if we missed the ACK to the ranging init messag…
int done = INST_NOT_DONE_YET; #define INST_DONE_WAIT_FOR_NEXT_EVENT 1 //this signifies that the current event has been processed and instance is ready for next one #define INST_DONE_WAIT_FOR_NEXT_EVENT_TO 2 //this signifies that the current event has…
instance_run(); if((instance_data[0].monitor == 1) && ((portGetTickCnt() - instance_data[0].timeofTx) > instance_data[0].finalReplyDelay_ms)) ACHOR 返回到Main函数(其它设备代码一样)执行下面的判断,我们先看monitor,看看之前有没有初始化,我们前面分析代码没有设置monitor所以只能找初始化了.---没有找到,我们认为它是0,所…
上面我们的代码分析到ANCHOR 调用了一次testapprun_s,但是后面退出后发现还是满足while 条件,逼不得已还得再次调用testapprun_s.testapprun_s 也就是这样一点一点被消磨殆尽(分析完)(大部分代码也是本人第一次看,分析的不妥的地方大家多担待,后续发现问题我会及时更新) 好了,我们再看run 部分的代码 while(done == INST_NOT_DONE_YET) { //int state = instance_data[instance].testA…
关于ASProtect.SKE.2.11 stolen code方面的文章已经很多了,今天我想再详细地说说它的细节,献给喜欢破解的兄弟们. stolen code并不可怕! ASProtect.SKE.2.11将入口处的一部分代码放到壳里了,看下面: 未加壳的入口点: 00401350 >    55            push    ebp 00401351      8BEC        mov     ebp, esp 00401353      6A FF         push…
DWM1000 帧结构分析主要学习DWM1000 帧过滤功能,希望在目前DS-TWR定位系统中增加中断和帧过滤功能,帧过滤功能可以有效减少系统中的各个模块同时收发数据时的干扰问题,从而极大的提供系统稳定性以及刷新频率.帧过滤以及中断是近期学习的重点,学习基于官方代码为准,部分摘录官方代码进行说明解释. 1 Blink 数据格式 1.1 Blink 数据结构格式定义 1.2 Blink数据结构代码定义 typedef struct { uint8 frameCtrl; // frame contr…
蓝点DWM1000 模块已经打样测试完毕,有兴趣的可以申请购买了,更多信息参见 蓝点论坛 正文: DWM1000 定位数据 官方定位程序,建议先学习基础API程序 参考手册: 在手册上提到,目前双向定位分为两个阶段,一共涉及了5中数据格式,首先我们上个总图. 从图中可以看到,两个阶段分别是发现阶段(Discovery Phase)和轮训阶段(Ranging Phase). 其中Discovery Phase主要涉及到两种数据,BLink 和 Ranging Init,主要完成的任务是TAG 和A…
多标签代码已经基本实现,完成代码可以在论坛上下载 http://bphero.com.cn/forum.php?mod=viewthread&tid=53&fromuid=2  蓝点DWM1000 模块已经打样测试完毕,有兴趣的可以申请购买了,更多信息参见 蓝点论坛 20181125 更新,按照下面的逻辑,已经完成代码,全部代码编译通过,需要后期测试. 1 单个标签定位模式 定位实现基于DWM1000 基础API 实验SS-TWR或者DS-TWR方法,非官方定位源码,官方定位源码使用的是大…
UWB 目前比较火热,不论国内还是国外目前都掀起一股热潮. 但是实际工程代码很少,开源代码更少. 目前代码主要有 1 DecaWave Release的定位源码,代码基于TWR,一个非常大的状态机. 之前在博客进行过分析,对于初学者来说门槛太高. 2 淘宝商家Release的定位源码,大多基于官方基本例程去修改,实现测距,进而实现定位,这样的代码通常涉及的东西dwm1000 功能较少,在实际工程中应用比较困. 这里开源一个uwb 框架,姑且命名为51uwb_base,介于二者之间,作为一个工程的…
为了能够模拟登陆QQ,并获取信息.对扫码登录微信进行了分析.简单的用了一下Django将获取的信息映射到页面上.(python3+pycharm) 主要过程就是: 1.获取二维码 2.扫码登录(有三种状态) 3.获取联系人信息(index页面获取的是个人信息.最近联系人信息.公众号) 4.获取所有的联系人 5.发送和接收消息(接收消息打印到了后台) 创建Django项目.导入JQuery(发送AJax请求).创建APP.创建模板(简单的弄一下,能合理显示得到的数据就好) url.py from…
原文地址 https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/authoring Getting started with Tag Helpers This tutorial provides an introduction to programming Tag Helpers. Introduction to Tag Helpers describes the benefits that Tag Helpers…
原文地址 https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/intro What are Tag Helpers? Tag Helpers enable server-side code to participate in creating and rendering HTML elements in Razor files. For example, the built-in ImageTagHelper ca…
返回博客列表 转 .Net中的加密解密 李朝强 发布时间: 2015/11/23 12:55 阅读: 33 收藏: 3 点赞: 0 评论: 0 在一些比较重要的应用场景中,通过网络传递数据需要进行加密以保证安全.本文将简单地介绍了加密解密的一些概念,以及相关的数字签名.证书,最后介绍了如何在.NET中对数据进行对称加密和解密. 加密和解密 说 到加密,可能大家最熟悉的就是MD5了,记得几年前我刚开始接触Web编程的时候,研究的一个ASP论坛程序,它的用户密码就是采用的MD5进行加密. MD5实际…
逻辑:接收到socket之后需要将socket发送的图片数据保存下来并通知handler更新界面 关键代码: public void readImage(Socket socket) { try { InputStream in = socket.getInputStream(); BufferedInputStream bis = new BufferedInputStream(in); Bitmap bitmap = BitmapFactory.decodeStream(bis);//这个好…
一.数据加密/编码算法列表   常见用于保证安全的加密或编码算法如下:   1.常用密钥算法   密钥算法用来对敏感数据.摘要.签名等信息进行加密,常用的密钥算法包括:   DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合:    3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高:    RC2和 RC4:用变长密钥对大量数据进行加密,比 DES 快:    IDEA(Internatio…
一.认识JSON JSON是一种轻量级.基于文本.与语言无关的数据交换格式,可以用文本格式的形式来存储或表示结构化的数据. 二.POST请求与Content-Type: application/json 常用的HTTP请求方法有GET, POST, PUT, DELETE等.在提交POST请求时,请求数据放在消息体(Body)中,请求数据的格式及编码方式用Content-Type来指定.如我们常用的表单<form>提交,其Content-Type默认为application/x-www-for…
帧过滤功能可以在同一个环境内组建多个网络而不干扰(非频段不同),可以通过PANID(网络ID)区分不同网络,不同网络中的模块无法直接通信, 再之,利用短地址,网络中可以同时有多个模块发送信息,而接收端会根据信息短地址不同而自动过滤. 1 发送端部分,组建发送结构体,按照MAC 数据结构组织. srd_msg_dsss msg_f ; // ranging message frame with 16-bit addresses ; //set frame type (0-2), SEC (3),…
using AIOWeb.Models; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; namespace AIOWeb { /// <summary> /// wxapi 的…
本文来自网易云社区 之前有介绍<wireshark抓包分析--TCP/IP协议>,然后某天有人问我,示例里是HTTP的,如果是HTTPS,你可以抓包分析吗?基于好奇,我查阅了下相关资料,把一些浅见分享给大家.在讲HTTPS的解密之前先来看下HTTPS与HTTP的不同之处,HTTPS是在TCP/IP与HTTP之间,增加一个安全传输层协议,而这个安全传输层协议一般用SSL或TLS,类似于下图.即HTTPS=HTTP+SSL/TLS. SSL协议分为SSL记录协议层和SSL握手协议层.SSL握手协议…
这两天在跟友商对接接口,在对外暴露接口的时候,因为友商不需要登录即可访问对于系统来说存在安全隐患,所以需要友商在调用接口的时候需要将数据加密,系统解密验证后才执行业务.所有的加密方式并不是万能的,只是增加了破解的成本高低而已-- import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; im…
知识需要不断积累.总结和沉淀,思考和写作是成长的催化剂这篇很轻松,没有什么费脑子的,所以解析较少,代码较多,为数不多的拿来即用篇整个章节分布请移步 内容目录 一.概述二.序列化1.二进制文件2.XML3.JSON三.加解密1.不可逆加密MD52.对称可逆加密3.非对称可逆加密4.一些组合应用1.CA证书2.单边认证https3.双边认证 一.概述 序列化是把一个内存中的对象的信息转化成一个可以持久化保存(二进制数据)的形式,以便于保存或传输,序列化的主要作用是不同平台之间进行通信,常用的有序列化…
.Net中的加密解密 引言 在一些比较重要的应用场景中,通过网络传递数据需要进行加密以保证安全.本文将简单地介绍了加密解密的一些概念,以及相关的数字签名.证书,最后介绍了如何在.NET中对数据进行对称加密和解密. 加密和解密 说到加密,可能大家最熟悉的就是MD5了,记得几年前我刚开始接触Web编程的时候,研究的一个ASP论坛程序,它的用户密码就是采用的MD5进行加密.MD5实际上只是一种散列运算,或者可以称为单向的加密,即是说无法根据密文(加密后的数据),推导出明文(原数据).而我们下面要说明的…
一.数据加密/编码算法列表   常见用于保证安全的加密或编码算法如下:   1.常用密钥算法   密钥算法用来对敏感数据.摘要.签名等信息进行加密,常用的密钥算法包括:   DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合:   3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高:   RC2和 RC4:用变长密钥对大量数据进行加密,比 DES 快:   IDEA(International…