原创 C語言--臨時性定義
C語言–臨時性定義 先看下面一段代碼: file1.c int globalInt; int main() { funcInFile2(); printf("main func[%d]\n", globalInt); re
原创 讀書筆記《Debug Hacks --調試技術與工具》(0-概述)
Debug是非常個性化的工作,但是有效的debug方法,解決問題的思路毫無疑問是建立在對系統,應用的理解上。 程序從編碼到運行,有語法/編譯問題,以及運行的問題。本系列的讀書筆記主要討論運行過程中遇到問題,如何繼續調試。 從代碼到
原创 讀書筆記 《C Primer Plus》(1-關鍵字)
我一直認爲,能用好C語言提供的關鍵字,是把C語言使用好的第一步。 下面提綱挈領地彙總一下C語言中的關鍵字,力求面面俱到。 類型相關 數據相關的關鍵字包括11個: 字符:char(一個char就是一個byte,一般8位) 整數:s
原创 PBOC/EMV 流程概述 && 要點敘述
(一) EMV/PBOC 應用選擇 根據PBOC3.0的第三部分《中國金融集成電路(IC)卡規範第3部分:與應用無關的IC卡與終端接口規範》中提到的應用選擇,如下: 1. 應用選擇是觸電激活\卡片復位之後,在第一個應用功能
原创 IAR 目標文件內存分配
一直都對IAR編譯出來的文件,在CPU開始執行該文件的時候,代碼數據,代碼裏面的常量,全局變量,局部變量怎麼分配在機器上不明白。看了一些資料,得到下面結論。如果發現有問題,希望留下寶貴的意見。由IAR編譯出來的文件,從MAP文件看,大致可
原创 QPBOC之GPO(二):脫機貨幣檢查
脫機貨幣檢查 小額檢查、小額和CTTA檢查、小額或CTTA檢查是qPBOC的三種檢查脫機消費的方法。 首先,這是卡片的屬性(卡片附加處理:9F68)
原创 QPBOC之GPO(一):CVM處理
QPBOC的交易,最複雜的步驟,就是GPO了。GPO主要處理的事情包括: 1. 防拔處理; 2. CVM處理; 3. 脫機貨幣檢查。 這裏,主要把C
原创 大小端的問題
關於大小端,做嵌入式的開發必須關注到。 大端(Big Endian)與小端(Little Endian) 大端:內存中的高地址保存數據中的低位數據,小端就相反。(這樣的邏輯關係,舉一反三都妥妥的) 比如對於一個數0x1122 使用Litt
原创 JAVA card 應用開發(二) 在項目增加APPLET
在上篇博文中,《JAVA card 應用開發創建第一個APPLET》,介紹了一個項目從無到有。 那麼,我們建立了這個項目後,只有一個應用(一個可選AID),如果我希望這個項目可以有多個應用(有多個AID可選),就類似卡片初始化後,我可以選
原创 PBOC/EMV之脫機明文PIN和脫機密文PIN
PBOC/EMV之脫機明文PIN和脫機密文PIN 1. EMV與PBOC在脫機PIN的區別: EMV和PBOC都支持脫機明文PIN和聯機密文PIN。區別在於EMV還支持脫機密文PIN,而在PBOC中,EMV標識支持脫機密文P
原创 JAVA card 應用開發(三) 把APPLET(CAP文件)裝載到卡片
根據前面兩篇博文,我們可以在Eclipse上建立好Applet,並且可以有多個AID,可以選擇不同的應用。 那麼,以上我們都是基於模擬環境的邏輯,實際上有些函數接口是需要實際的環境,就是說我們需要把Applet下載到卡片裏面,實際去調
原创 《PIN CHANGE/UNBLOCK 命令報文》
以下文字,源於《中國金融集成電路(IC)卡規範 第5部分:借記貸記應用卡片規範》(B.10 PIN修改/解鎖C-APDU/R-APDU), 不過我在實際操作過程中,遇到一些問題,在文章的最後,我把遇到的困惑寫了出來。 B.10 PI
原创 TC、ARQC、AAC及ARPC校驗方式
以下這篇文章並非原著,文檔傳到我這裏,我已經不知道出處了,感謝作者。 TC、ARQC、AAC及ARPC校驗方式 前提: 1. 獲得IC卡AC子密鑰,或者獲得髮卡行AC主密鑰 本例: MDKAC =
原创 如何判斷當前的接觸式交易是PBOC還是EC
電子現金交易,在金融規範裏面的《中國金融集成電路(IC)卡規範 第13部分:基於借記貸記應用的小額支付規範》,有時候在插入卡片後,不容易判斷當前卡片執行了標準的PBOC交易還是電子現金交易。 從開發人員的角度出發,有時候希望卡片執行電子
原创 金融PBOC卡片目錄結構
根據第三部分《中國金融集成電路(IC)卡規範第3部分:與應用無關的IC卡與終端接口規範》,提及到卡片目錄結構: 1. 卡片可以是單層目錄的單應用卡,也可以是單個目錄的多應用卡; 2. 主文件是卡商唯一的目錄定義文件,文