汽车钥匙加密算法技术

本文介绍了汽车钥匙加密算法的相关技术,包括定义、变量声明、加密函数以及学习检测过程。主要涉及加密算法、汽车钥匙编程等概念,通过示例代码展示了如何实现加密过程。
摘要由CSDN通过智能技术生成
#define _COSMIC_
 
#include "st7fliteus5.h"
/******************************************************************************
                          DEFINE 部分
******************************************************************************/
//#define DEBUG
//#define RELEASE


#define REPEAT_FRAME 4


#define EnableInterrupts {_asm ("RIM");}  
#define DisableInterrupts {_asm ("SIM");} 
#define Nop {_asm ("nop");} 
#define WaitforInterrupt {_asm ("wfi");} 
#define Halt {_asm ("halt");} 


#define w 16
#define r 12
#define b 8
#define t 26 //2*r+2=12*2+2
#define c 4 //b*8/w = 16*8/32 
 
#define ROTL(x,y) (((x)<<(y&(w-1))) | ((x)>>(w-(y&(w-1)))))
#define ROTR(x,y) (((x)>>(y&(w-1))) | ((x)<<(w-(y&(w-1)))))


/*************************************************/
/*          变量 常量  申明部分                       */
/*************************************************/
const unsigned long SerialNum=12345678; //@0x ;
//const unsigned long RandomKey=87654321; //@0x ;
const unsigned int SKey_A[t]={0x1111,0x2222,0x3333,0x4444,0x5555,0x6666,0x7777,0x8888,0x1111,0x2222,0x3333,0x4444,0x5555,0x6666,0x7777,0x8888,0x1111,0x2222,0x3333,0x4444,0x5555,0x6666,0x7777,0x8888,0x1111,0x2222}; //@0x ; //工厂密钥
@near unsigned int SKey_B[t] @0x1002;   //={0x1111,0x2222,0x3333,0x4444,0x5555,0x6666,0x7777,0x8888,0x1111,0x2222,0x3333,0x4444,0x5555,0x6666,0x7777,0x8888,0x1111,0x2222,0x3333,0x4444,0x5555,0x6666,0x7777,0x8888,0x1111,0x2222}; //@0x ; //产品密钥
const unsigned int PW = 0xb7e1; //0xb7e15163; 
const unsigned int QW = 0x9e37; //0x9e3779b9;
const unsigned char RCCR_ROM @0XDEE2;
 
unsigned char Key_Code;


_Bool PA0 @PADR:0;
_Bool PA1 @PADR:1;
#define KEY1 (Key_Code&0x0b)
_Bool LED @PADR:3;
#define KEY2 (Key_Code&7)
//_Bool PA5 @PADR:5;
_Bool TXO @PADR:5;


unsigned char Flag_Byte @0x80;
_Bool AT_OV_bflag @Flag_Byte: 0;
_Bool Key_bflag @Flag_Byte: 1;
_Bool Learn_bflag @Flag_Byte: 2;

//unsigned long 
/
@near unsigned int
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MUKAMO

你的鼓励是我们创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值