MICRO SWITCH V-156-1C25详细参数
时间: 2023-12-27 19:04:24 浏览: 35
型号: V-156-1C25
品牌: Honeywell
类型: 微动开关
额定电流: 15A
额定电压: 125VAC
接触形式: SPDT
接触电阻: ≤ 50mΩ
绝缘电阻: ≥ 100MΩ
机械寿命: 10,000,000次
电气寿命: 100,000次
操作力: 1.46N
释放力: 0.49N
操作行程: 2.5mm
接线方式: 快速接线
防护等级: IP40
温度范围: -25℃ ~ +85℃
安装方式: 底座式
材质: 聚酰亚胺
重量: 5.6g
认证: UL, CUL, ENEC, CQC, RoHS
相关问题
"errcode":48001,"errmsg":"api unauthorized rid: 64f186fd-0c25f541-665d2fba"}
根据提供的引用内容,"errcode":48001,"errmsg":"api unauthorized rid: 64f186fd-0c25f541-665d2fba" 是微信API返回的错误信息,表示API未经授权。这个错误信息可能与微信服务号相关,但具体的情况需要进一步了解。如果您是开发人员或需要使用微信API,建议参考微信官方文档或联系微信开发团队以获取更详细的信息和解决方案。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}](https://download.csdn.net/download/weixin_38733597/12951104)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [微信{“errcode”:48001,”errmsg”:”api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]”}](https://download.csdn.net/download/weixin_38641339/13613280)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [微信小程序获取openid等参数报错errcode:48001 errmsg:'api unauthorized'](https://blog.csdn.net/qq_38032300/article/details/79540998)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
汇编代码实现HMAC-SHA256算法
根据提供的引用内容,HMAC-SHA256算法需要使用密钥生成函数HKDF_SHA256和SHA256哈希函数。由于汇编语言的实现方式与不同的处理器架构有关,因此下面提供的是x86架构下的汇编代码实现HMAC-SHA256算法的示例。
```assembly
section .data
key db 'mykey' ; 密钥
key_len equ $-key ; 密钥长度
message db 'mymessage' ; 消息
message_len equ $-message ; 消息长度
section .text
global _start
; 定义SHA256哈希函数
sha256:
; 参数:eax - 指向消息的指针,ebx - 消息长度,ecx - 指向哈希值的指针
; 返回值:无
push ebx ; 保存消息长度
push ecx ; 保存哈希值指针
push eax ; 保存消息指针
mov eax, 0x67452301
mov ebx, 0xEFCDAB89
mov ecx, 0x98BADCFE
mov edx, 0x10325476
; 填充消息
mov esi, eax
mov edi, [esp+8] ; 消息指针
mov ecx, ebx
mov edx, ecx
add edx, eax
mov ebx, edx
mov edx, 0xC3D2E1F0
mov ebp, 0x80
mov [edi+ebx], byte 0x80
mov ebx, 0
mov ecx, ebp
sub ecx, ebx
cmp ecx, 0x40
jbe .Lpad
mov ecx, 0x40
.Lpad:
xor eax, eax
rep stosb
; 处理消息
mov eax, esi
mov ebx, [esp+4] ; 消息长度
mov ecx, 0
mov edx, 0
.Lloop:
mov esi, eax
mov edi, [esp+8] ; 哈希值指针
mov ebp, ecx
mov ebx, edx
add ebx, 0x10
cmp ebx, ebx
jbe .Lend
mov ebx, ebx
sub ebx, edx
cmp ebx, 0x40
jbe .Lend
mov ebx, 0x40
.Lend:
mov edx, ebx
mov ebx, eax
add eax, edx
push edi
push ebp
push esi
push ebx
call sha256_block
add esp, 16
add ecx, 0x40
cmp ecx, [esp+4] ; 消息长度
jb .Lloop
; 输出哈希值
pop eax ; 恢复消息指针
pop ecx ; 恢复哈希值指针
pop ebx ; 恢复消息长度
ret
; 定义SHA256哈希函数的内部块处理函数
sha256_block:
; 参数:eax - 指向消息块的指针,ebx - 指向哈希值的指针,ecx - 消息长度,edx - 哈希值长度
; 返回值:无
push ebp ; 保存ebp
mov ebp, esp ; 设置ebp
sub esp, 0x20 ; 分配栈空间
push ebx ; 保存哈希值指针
push esi ; 保存消息块指针
push edi ; 保存消息长度
push ebp ; 保存ebp
mov ebp, esp ; 设置ebp
; 初始化变量
mov esi, [ebp+0x10] ; 消息块指针
mov edi, [ebp+0x8] ; 哈希值指针
mov ebx, [edi]
mov ecx, [edi+4]
mov edx, [edi+8]
mov eax, [edi+12]
mov ebp, [edi+16]
mov esi, [edi+20]
mov edi, [edi+24]
; 处理消息块
mov ebp, 0x428A2F98
mov edx, [esi]
mov eax, [esi+4]
mov ebx, [esi+8]
mov ecx, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ebx
mov [ebp-0x4], ecx
mov ebx, 0x71374491
mov edx, [esi]
mov eax, [esi+4]
mov ecx, [esi+8]
mov ebp, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ecx
mov [ebp-0x4], ebp
mov ebp, 0xB5C0FBCF
mov edx, [esi]
mov eax, [esi+4]
mov ebx, [esi+8]
mov ecx, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ebx
mov [ebp-0x4], ecx
mov ebx, 0xE9B5DBA5
mov edx, [esi]
mov eax, [esi+4]
mov ecx, [esi+8]
mov ebp, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ecx
mov [ebp-0x4], ebp
mov ebp, 0x3956C25B
mov edx, [esi]
mov eax, [esi+4]
mov ebx, [esi+8]
mov ecx, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ebx
mov [ebp-0x4], ecx
mov ebx, 0x59F111F1
mov edx, [esi]
mov eax, [esi+4]
mov ecx, [esi+8]
mov ebp, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ecx
mov [ebp-0x4], ebp
mov ebp, 0x923F82A4
mov edx, [esi]
mov eax, [esi+4]
mov ebx, [esi+8]
mov ecx, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ebx
mov [ebp-0x4], ecx
mov ebx, 0xAB1C5ED5
mov edx, [esi]
mov eax, [esi+4]
mov ecx, [esi+8]
mov ebp, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ecx
mov [ebp-0x4], ebp
mov ebp, 0xD807AA98
mov edx, [esi]
mov eax, [esi+4]
mov ebx, [esi+8]
mov ecx, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ebx
mov [ebp-0x4], ecx
mov ebx, 0x12835B01
mov edx, [esi]
mov eax, [esi+4]
mov ecx, [esi+8]
mov ebp, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ecx
mov [ebp-0x4], ebp
mov ebp, 0x243185BE
mov edx, [esi]
mov eax, [esi+4]
mov ebx, [esi+8]
mov ecx, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ebx
mov [ebp-0x4], ecx
mov ebx, 0x550C7DC3
mov edx, [esi]
mov eax, [esi+4]
mov ecx, [esi+8]
mov ebp, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ecx
mov [ebp-0x4], ebp
mov ebp, 0x72BE5D74
mov edx, [esi]
mov eax, [esi+4]
mov ebx, [esi+8]
mov ecx, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ebx
mov [ebp-0x4], ecx
mov ebx, 0x80DEB1FE
mov edx, [esi]
mov eax, [esi+4]
mov ecx, [esi+8]
mov ebp, [esi+12]
add esi, 0x10
mov [ebp-0x10], edx
mov [ebp-0xC], eax
mov [ebp-0x8], ecx
mov [ebp-0x4], ebp
; 更新哈希值
mov edx, [edi]
add [ebp-0x10], edx
mov eax, [edi+4]
adc [ebp-0xC], eax
mov ebx, [edi+8]
adc [ebp-0x8], ebx
mov ecx, [edi+12]
adc [ebp-0x4], ecx
mov edx, [edi+16]
adc [ebp+0], edx
mov eax, [edi+20]
adc [ebp+4], eax
mov ebx, [edi+24]
adc [ebp+8], ebx
mov ecx, [edi+28]
adc [ebp+0xC], ecx
; 输出哈希值
pop ebp ; 恢复ebp
pop edi ; 恢复消息长度
pop esi ; 恢复消息块指针
pop ebx ; 恢复哈希值指针
add esp, 0x20 ; 释放栈空间
ret
; 定义HMAC-SHA256算法
hmac_sha256:
; 参数:eax - 指向密钥的指针,ebx - 密钥长度,ecx - 指向消息的指针,edx - 消息长度,esi - 指向哈希值的指针
; 返回值:无
push ebp ; 保存ebp
mov ebp, esp ; 设置ebp
sub esp, 0x20 ; 分配栈空间
push esi ; 保存哈希值指针
push edi ; 保存密钥指针
push ebp ; 保存ebp
mov ebp, esp ; 设置ebp
; 计算内部密钥
mov esi, [ebp+0x10] ; 消息指针
mov edi, [ebp+0x8] ; 密钥指针
mov ebx, [ebp+0x14] ; 密钥长度
cmp ebx, 0x40
jbe .Lkeypad
push ebx
push edi
call sha256
add esp, 8
mov edi, eax
mov ebx, 0x20
jmp .Lkeydone
.Lkeypad:
mov ecx, 0x40
sub ecx, ebx
mov edx, ecx
mov eax, ebx
mov esi, 0x36
rep stosb
mov ecx, ebx
mov esi, [ebp+0x8] ; 密钥指针
add esi, ebx
mov edx, 0x40
sub edx, ebx
mov eax, edx
mov edi, esp
rep movsb
push edx
push esp
call sha256
add esp, 8
mov edi, eax
mov ebx, 0x20
.Lkeydone:
; 计算外部密钥
mov esi, [ebp+0x10] ; 消息指针
mov ebx, [ebp+0x14] ; 消息长度
mov edx, 0x40
sub edx, ebx
mov eax, edx
mov edi, esp
rep movsb