我已经尝试了一个多星期的时间来使用Mifare Ultralight C对Android手机进行身份验证.我已经确认我可以写入标签(通过写入不安全的内存页然后阅读我写的内容).我也可以写入关键页面(44-47)并为所有16个关键字节写入0x00.
当我尝试进行身份验证时,以下是一次交换过程中涉及的数据示例 - 它来自我的应用程序编写的日志.谁能告诉我,如果我做错了什么?我AM不泄露,并有机会获得完整的数据表.请注意,下面的十六进制字符串显然是发送和接收的数据的人类可读版本,在代码中由字节数组组成.
发送身份验证命令
Received rndB: 8A5735694D9D7542
Key: 00000000000000000000000000000000
IV: 0000000000000000
Decrypted rndB: EF340C62E1B866D4
rndB': 340C62E1B866D4EF
rndA: 6E262630E299F94F
rndA+rndB': 6E262630E299F94F340C62E1B866D4EF
Key: 00000000000000000000000000000000
IV: 8A5735694D9D7542
ek(RndA+rndB'): E36C6C46FAAC60BA45DDF5F5A0802C79
Run Code Online (Sandbox Code Playgroud)
发送后0xAF + E36C6C46FAAC60BA45DDF5F5A0802C79 我立即失去与标签的连接.我已经阅读了数据表并阅读了我在这里找到的每篇文章.我也查看了libfreefare代码,老实说,我无法弄清楚我做错了什么.
恩智浦的技术支持完全没有反应.
有任何想法吗?我很茫然.
这让我感到害怕......我正试图找到一个NFC/RFID标签:
对发送到标签的数据实施加密和/或加密签名,以便标签可以由阅读器进行认证.我不在乎标签是否试图验证读卡器,并且
得到Android手机和标准NFC库的广泛支持
以安全的方式存储加密密钥(在配置熔丝熔断后读取它应该是不可能的).
我不关心标签上可以存储什么样的有效负载,我也没有使用NDEF消息.我不关心使用的加密是对称的还是非对称的.我想要做的就是向标签发送一些数据并使用共享密钥对其进行加密或签名并将其发送回手机,然后我的代码将执行相同的功能并将结果与标签响应以验证标签.
我有Atmel CryptoRF*标签的样本,虽然它们可能会完成我需要的大部分工作,但是我所拥有的唯一Android手机无法正确检测到它们.手机响了,我正在使用相应的技术列表条目过滤'android.nfc.action.TECH_DISCOVERED',但我什么都没得到.Atmel的技术支持比无用更糟糕(因为我浪费时间问他们从不打扰回答的问题).Logcat看起来像:
我没有看到任何先前的条目表明该标签曾被Android识别过.
这似乎是一种简单,明显和需要的标签类型,它必须存在于某处.
NFCGuy或其他人 - 任何想法?
谢谢!
*Atmel CryptoRF数据表中显示以下内容,这可能有助于确定Android手机是否可以读取这些内容,这可能有助于或可能没有用:
我才刚刚开始探索OpenCV和EmguCV .NET包装,并且需要了解其功能全局的人们,或者可能是那些完成与我需要完成的任务相似的人们的一般指导。
我将拥有一系列的静止照片,并且在每个图像中都将出现一个物体或什么也没有。这些物体是金属硬件(螺栓),它们的侧面将平行于图像的顶部/底部放置(即,图片是从上方拍摄的)。如果有物体,它将是大约100种离散类型的螺栓之一,其中一些具有非常相似的特征和尺寸,但不完全相同。例如,它们的轮廓大部分都是矩形的,但长度和宽度(直径)会有所变化,并且头的形状可以是六边形或圆形(在轮廓上分别显示为矩形或圆形的较小部分) ),或具有用于埋头孔应用的锥形头。我的零件类型说明

(来源:donsnotes.com)
我需要对它们进行分类,以便区分所有大小和类型。1-3 / 8“螺栓应分类为与1-1 / 2”螺栓不同,即使它们具有相同的直径和相同的头部类型。尺寸之间的最小长度差为1/8“,而不是标准的1/16”。
如果有问题,我可以很好地控制以下各项:
不幸的是,我找不到直接解决我需要做的任何在线论文或文章-但是很多文章都说明了一些简单的任务,例如找到彩色的球或找到矩形。在识别和分类大量(但)相似但形状各异的东西时,我找不到任何东西。我确实有两本建议的OpenCV书籍,尽管它们很棒,但它们似乎并没有解决这个问题。
我在示例图像上发现了非常干净的Canny边缘,但是由于光照,零件内部有很多噪点。这使得找到干净的Hough线段有点斑点。
我不确定是否应该尝试使用通过测量Canny边缘而计算出的绝对尺寸来缩减可能匹配的列表-然后使用更强大的功能(例如级联分类器)?或者是什么。
我真的只是在寻找某人对总体战略或正确方向观点的看法...
谁能给我一些开始尝试的东西?我真的很茫然。
谢谢!