女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

DS5250與磁條讀卡器接口

星星科技指導員 ? 來源:ADI ? 作者:ADI ? 2023-01-11 09:49 ? 次閱讀

本應用筆記解釋了如何在DS5250安全微控制器上輕松實現磁條卡讀取和解碼。本文還演示了如何開發將磁條卡讀取功能與安全微控制器的更高級別安全性和加密功能相結合的應用。本例使用DS5250評估(EV)板與磁條讀卡器接口。提供源代碼,可輕松移植到Maxim其他基于8051的微控制器。

概述

背面帶有磁性編碼條紋的卡通常稱為磁條卡,用于大量銀行、儲值和其他金融應用。信用卡、ATM 卡和借記卡都是典型的磁條卡,有時還嵌入了智能卡芯片。其他例子是其他例子,例如用于游戲、復印機和公共交通的許多禮品卡、安全卡或房間鑰匙卡以及儲值卡。當使用標準ISO格式時,這些磁條卡的最大容量約為160字節,通常不會存儲大量數據。與智能卡或便攜式閃存驅動器相比,磁條卡的存儲容量足以滿足最常使用這些卡的金融和銀行應用。此外,磁條卡堅固耐用,價格低廉,不需要內部電源,并且相對容易讀取。

本應用筆記介紹如何使用DS5250安全微控制器與磁條讀卡器接口。之所以選擇DS5250,是因為它提供了構建讀取磁條卡的通用器件(即銷售點(POS)終端)所需的關鍵安全和加密功能。

磁條讀卡器包含執行低級任務的電路:將磁條上的磁通量解碼為比特流。DS5250管理更高層次的任務:將這些位轉換為字符,然后讀取和驗證數據字段。

硬件和軟件要求

硬件

本示例應用使用DS5250評估(EV)板(修訂版B),修改如下:

端口 0 引腳的上拉電阻組 (RN2) 已被移除。

示例應用程序還需要以下硬件:

讀卡器—MagTek 三軌刷卡讀卡器,帶 3V 解碼器 ASIC;部件號 21030001 修訂版 G 或更高版本

兩個上拉電阻(約10kΩ)

線性穩壓器(能夠從5V電源產生3V至3.6V電壓)

用于測試的磁條卡(ATM卡,信用卡等)

以下各節介紹示例應用程序的實現。完整的示例C代碼可從Analog的FTP站點下載。

連接讀卡器

MagTek 讀卡器有五個接口引腳(包括電源和接地):

引腳 1 - 頻閃

信號始終是讀卡器的輸入。它由主微控制器驅動,以輸出卡數據位并置位復位序列。

引腳 2 - 數據

該信號通常用作讀卡器的輸出。它攜帶來自磁道 A/B/C 的卡數據位,這些磁道由 STROBE 信號計時輸出。在某些情況下(例如,當置位復位序列時),該信號可由主微控制器驅動。

引腳 3 — VDD

為讀卡器供電(2.7V 至 3.6V)。

引腳 4 - 接地

引腳 5 - 接地

由于STROBE和數據引腳工作在3V電平,DS5250不能用標準端口引腳直接驅動它們。因此,使用端口0的引腳(工作在漏極開路模式),當DS5250對引腳進行三電平時,電阻將信號電平拉至3.6V。DS5250直接從數據線讀取數據信號,因為最小VIHDS5250端口引腳的電平足夠低,可以兼容3V I/O電平。(請參考DS5250數據資料了解更多詳細信息。

讀卡器工作在 3V 電平;它不能直接由DS5250使用的5V電源供電。由于DS5250評估板不提供3V電源,因此使用單獨的線性穩壓器(如MAX1658)為讀卡器供電。參見圖1。

圖1.例如應用程序的連接。

執行復位序列

首次上電后,主微控制器必須重置讀卡器,然后才能接受刷卡。每次刷卡后也必須執行此重置序列,以清除內部讀卡器ASIC的內存,并使讀卡器準備好接受新的刷卡。

為了復位讀卡器,主微控制器(即本應用中的DS5250)必須按以下順序驅動頻閃和數據。(有關確切的電壓電平和時序參數,請參閱 MagTek 文檔。

DATA 和 STROBE 都從高(空閑)狀態開始。

強制數據降低。

在數據保持低電平的情況下,將頻閃驅動為低電平,然后再次驅動為高電平。

再次將頻閃驅動為低電平,然后釋放數據,使其浮高。

在數據浮動高電平時,將頻閃驅動為低電平,然后再次高電平。此時,讀卡器被重置并處于低功耗等待狀態。

將頻閃驅動為低,然后再次高。此操作“武裝”讀卡器并準備接受刷卡。

// Generate a long delay for card reset and read intervals.

void longDelay()
{
   int i, j;

   for (i = 1; i < 5; i++) {
      for (j = 1; j < 5000; j++) {
         ;
      }
   }
}

// Generate a shorter delay (used between STROBE/DATA transitions).

void delay()
{
   int i;

   for (i = 1; i < 1000; i++) {
      ;
   }
}

// Release the DATA line (P0.0) and allow it to float high.

void dataHigh()
{
   P0 |= 0x01;
   delay();
}

// Drive the DATA line (P0.0) low.

void dataLow()
{
   P0 &= 0xFE;
   delay();
}



// Release the STROBE line (P0.1) and allow it to float high.

void strobeHigh()
{
   P0 |= 0x02;
   delay();
}

// Drive the STROBE line (P0.1) low.

void strobeLow()
{
   P0 &= 0xFD;
   delay();
}

void resetCardReader()
{
   dataHigh();
   strobeHigh();
   longDelay();

   dataLow();                // Force DATA low.
   longDelay();   
   strobeLow();              // Drive STROBE low, then high again.
   strobeHigh();
   strobeLow();              // Drive STROBE low, then release DATA.
   dataHigh();
   longDelay();

   strobeHigh();             // Drive STROBE low and high again two more times
   strobeLow();              //    to complete the reset and leave the card reader
   strobeHigh();             //    in the ready state, prepared to scan a card.
   strobeLow();
}

檢測刷卡

一旦讀卡器重置并布防,它就可以接受刷卡了。MagTek 讀卡器在刷卡時執行整個讀卡周期;主微控制器無需干預。卡條上所有三個磁道(磁道 A、磁道 B 和磁道 C)的全部內容都存儲在讀卡器 IC 上。在讀卡周期結束后,主微控制器可以一次一位地輸出這些數據。

讀卡器經歷一個握手周期,以通知主設備何時開始讀卡并完成。

循環從頻閃低電平和數據高浮動(空閑狀態)開始。

當讀卡器檢測到磁條在讀卡器頭上移動時,它開始掃描讀卡。它將數據線驅動為低電平,以通知主站刷卡已經開始。

主站的響應是將STROBE驅動為高電平,然后再次降低。

讀卡器將數據再次驅動高電平。

讀卡周期完成后,讀卡器再次將數據驅動為低電平。此操作告知主節點刷卡已完成,并且卡數據已準備好打卡。

// Wait for the DATA line to be driven low by the card reader.

void waitForDataLow()
{
   int i = 0xFF;

   dataHigh();               // Make sure that DATA is floating high.

   while ((i & 1) == 1) {
      i = P0;
   }
} 

....

   resetCardReader();
   printf("\r\n");
   printf("Waiting for card swipe...\r\n");
   printf("\r\n");

   waitForDataLow();      // DATA low indicates that card swipe has begun.
   strobeHigh();
   longDelay();
   strobeLow();
   longDelay();
   waitForDataLow();      // DATA low indicates that card swipe is complete.

讀取和解碼卡數據

刷卡完成并且所有卡數據由讀卡器ASIC解碼和存儲后,讀卡器將DATA線驅動為低電平。如上所述,此操作會提醒DS5250卡數據已準備好打卡。此時,DS5250可以按順序檢索卡數據中的每個位,方法是將STROBE驅動為高電平,然后驅動低電平,以便每個位輸出。在STROBE被驅動為高電平然后被驅動為低電平之后,下一個位由讀卡器ASIC在數據線上計時。ASIC 將數據驅動高電平 0 位,將數據驅動低電平 1 位。

// Clock a single bit value out of the card reader by driving STROBE high,
// then low, and reading the DATA line.  

int readBit()
{
   int i;

   strobeHigh();             // Drive STROBE high.
   strobeLow();              // Drive STROBE low (DATA line now contains bit).

   i = P0;
   if ((i & 1) == 0) {   
      return 1;              // Low on DATA line indicates a 1 bit.
   } else {
      return 0;              // High on DATA line indicates a 0 bit.
   }
}

從讀卡器輸出的前 16 位是一個“前導碼”,指示讀卡器 ASIC 的版本。應用程序可以丟棄這些位,因為它們不表示卡數據。

翻譯軌道 A

在 16 位前導碼之后,DATA 線路上時鐘輸出的下一個 704 位包含從磁條卡上的磁道 A 讀取的數據。使用標準 ISO 格式編碼時,磁道 A 最多包含 76 個字符,使用 7 位字符集,其中包括字母數字和各種其他符號。

每個 7 位字符首先輸出最低有效位 (LSB)。最高位(即第七位)是奇偶校驗位,可以選擇用于驗證卡數據的完整性。不考慮奇偶校驗位,其余 6 位定義可在磁道 A 上編碼的 64 個字符之一。例如,000000b 表示空格字符,000001b 表示感嘆號。char7bit[64] 字符數組顯示在下面的代碼中。

//          0123456789012345678901234567890123456789012345678901234567890 123
char char7bit[64] = 
           " !'#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";


// Clock out and decode a 7-bit character from the track memory, returning the
// character value.  7-bit (alphanumeric) characters are found on Track A only.

char read7BitChar()
{
   int i, c;

   // Each character is composed of 7 bits, which we clock out of the track memory
   // beginning with the least significant bit.  Bit 7 is parity, which is ignored.

   c = 0;
   for (i = 1; i < 128; i *= 2) {
      c |= (readBit() * i);
   }
   c &= 0x3F;

   return char7bit[c];       // Decode/return the character using the 7-bit table.
}

....

   // Track A - 76 characters, 7 bits per alphanumberic character including parity.

   printf("Track A > ");   
             
   for (i = 0; i < 76; i++) {
      putchar(read7BitChar());
   }
   printf("\r\n\r\n");

   // At this point, we have read 532 bits of the 704-bit Track A memory on the 
   // card reader IC.  Flush the remaining 172 bits.

   for (i = 0; i < 172; i++) {
      readBit();
   }

軌道 A 上保存的實際數據因卡類型而異。此外,軌道 A 可以包含字母字符。因此,軌道A通常用于存儲持卡人的姓名,可能的地址,帳號和其他數字信息。如上面的代碼所示,在時鐘輸出磁道B數據之前,必須讀出磁道A存儲器的所有704位(即使并非所有位都包含編碼數據)。

翻譯軌道 B

磁道 B 的編碼與磁道 A 類似,不同之處在于這些字符是 5 位(4 位,加 1 位奇偶校驗位)編碼,而不是 7 位。軌道 B 字符集僅包含數字字符和符號,如下面的 char5bit[16] 字符數組所示。

//                   0123456789012345
char char5bit[16] = "0123456789:;<=>?";

// Clock out and decode a 5-bit character from the track memory, returning the
// character value.  5-bit (numeric+symbol) characters are found on Tracks B and C.

char read5BitChar()
{
   int i, c;

   // Each character is composed of 5 bits, which we clock out of the track memory
   // beginning with the least significant bit.  Bit 5 is parity, which is ignored.

   c = 0;
   for (i = 1; i < 32; i *= 2) {
      c |= (readBit() * i);
   }
   c &= 0x0F;

   return char5bit[c];       // Decode/return the character using the 5-bit table.
}

....

   // Track B - 40 characters, 5 bits per numeric/symbol character including parity.

   printf("Track B > ");   
             
   for (i = 0; i < 40; i++) {
      putchar(read5BitChar());
   }
   printf("\r\n\r\n");

與磁道 A 結束時一樣,在繼續讀取磁道 C 之前,必須讀取磁道 B 存儲器中的所有剩余位(如果需要磁道 C)。由于代碼已經從磁道 B 存儲器讀取了 200 位(40 個字符 x 5 位),因此在訪問磁道 C 數據之前,必須額外輸出 504 位。

翻譯軌道 C

磁道 C 以與磁道 B 相同的方式編碼,并使用與磁道 B 相同的字符集,最多 107 個 編碼的 7 位字符。軌道C最初旨在包含一個可重寫的數據區域以支持離線金融交易,但它并不常用。大多數磁條卡不包含磁道C上的編碼數據。

結論

磁條卡用于各種金融、訪問控制、政府和儲值應用。通過在DS5250評估板中增加一個簡單的MagTek刷卡讀卡器和少量支持硬件,可以開發將磁條卡讀取功能與安全微控制器的更高級別的安全性和加密功能相結合的應用。使用Keil的μVision C編譯器,可以在DS5250安全微控制器上輕松實現磁條卡讀取和解碼演示的應用。

審核編輯:郭婷

// Generate a long delay for card reset and read intervals.

void longDelay()
{
   int i, j;

   for (i = 1; i < 5; i++) {
      for (j = 1; j < 5000; j++) {
         ;
      }
   }
}

// Generate a shorter delay (used between STROBE/DATA transitions).

void delay()
{
   int i;

   for (i = 1; i < 1000; i++) {
      ;
   }
}

// Release the DATA line (P0.0) and allow it to float high.

void dataHigh()
{
   P0 |= 0x01;
   delay();
}

// Drive the DATA line (P0.0) low.

void dataLow()
{
   P0 &= 0xFE;
   delay();
}



// Release the STROBE line (P0.1) and allow it to float high.

void strobeHigh()
{
   P0 |= 0x02;
   delay();
}

// Drive the STROBE line (P0.1) low.

void strobeLow()
{
   P0 &= 0xFD;
   delay();
}

void resetCardReader()
{
   dataHigh();
   strobeHigh();
   longDelay();

   dataLow();                // Force DATA low.
   longDelay();   
   strobeLow();              // Drive STROBE low, then high again.
   strobeHigh();
   strobeLow();              // Drive STROBE low, then release DATA.
   dataHigh();
   longDelay();

   strobeHigh();             // Drive STROBE low and high again two more times
   strobeLow();              //    to complete the reset and leave the card reader
   strobeHigh();             //    in the ready state, prepared to scan a card.
   strobeLow();
}

檢測刷卡


一旦讀卡器重置并布防,它就可以接受刷卡了。MagTek 讀卡器在刷卡時執行整個讀卡周期;主微控制器無需干預??l上所有三個磁道(磁道 A、磁道 B 和磁道 C)的全部內容都存儲在讀卡器 IC 上。在讀卡周期結束后,主微控制器可以一次一位地輸出這些數據。

讀卡器經歷一個握手周期,以通知主設備何時開始讀卡并完成。

  1. 循環從頻閃低電平和數據高浮動(空閑狀態)開始。
  2. 當讀卡器檢測到磁條在讀卡器頭上移動時,它開始掃描讀卡。它將數據線驅動為低電平,以通知主站刷卡已經開始。
  3. 主站的響應是將STROBE驅動為高電平,然后再次降低。
  4. 讀卡器將數據再次驅動高電平。
  5. 讀卡周期完成后,讀卡器再次將數據驅動為低電平。此操作告知主節點刷卡已完成,并且卡數據已準備好打卡。

// Wait for the DATA line to be driven low by the card reader.

void waitForDataLow()
{
   int i = 0xFF;

   dataHigh();               // Make sure that DATA is floating high.

   while ((i & 1) == 1) {
      i = P0;
   }
} 

....

   resetCardReader();
   printf("\r\n");
   printf("Waiting for card swipe...\r\n");
   printf("\r\n");

   waitForDataLow();      // DATA low indicates that card swipe has begun.
   strobeHigh();
   longDelay();
   strobeLow();
   longDelay();
   waitForDataLow();      // DATA low indicates that card swipe is complete.

讀取和解碼卡數據


刷卡完成并且所有卡數據由讀卡器ASIC解碼和存儲后,讀卡器將DATA線驅動為低電平。如上所述,此操作會提醒DS5250卡數據已準備好打卡。此時,DS5250可以按順序檢索卡數據中的每個位,方法是將STROBE驅動為高電平,然后驅動低電平,以便每個位輸出。在STROBE被驅動為高電平然后被驅動為低電平之后,下一個位由讀卡器ASIC在數據線上計時。ASIC 將數據驅動高電平 0 位,將數據驅動低電平 1 位。


// Clock a single bit value out of the card reader by driving STROBE high,
// then low, and reading the DATA line.  

int readBit()
{
   int i;

   strobeHigh();             // Drive STROBE high.
   strobeLow();              // Drive STROBE low (DATA line now contains bit).

   i = P0;
   if ((i & 1) == 0) {   
      return 1;              // Low on DATA line indicates a 1 bit.
   } else {
      return 0;              // High on DATA line indicates a 0 bit.
   }
}

從讀卡器輸出的前 16 位是一個“前導碼”,指示讀卡器 ASIC 的版本。應用程序可以丟棄這些位,因為它們不表示卡數據。


翻譯軌道 A


在 16 位前導碼之后,DATA 線路上時鐘輸出的下一個 704 位包含從磁條卡上的磁道 A 讀取的數據。使用標準 ISO 格式編碼時,磁道 A 最多包含 76 個字符,使用 7 位字符集,其中包括字母數字和各種其他符號。

每個 7 位字符首先輸出最低有效位 (LSB)。最高位(即第七位)是奇偶校驗位,可以選擇用于驗證卡數據的完整性。不考慮奇偶校驗位,其余 6 位定義可在磁道 A 上編碼的 64 個字符之一。例如,000000b 表示空格字符,000001b 表示感嘆號。char7bit[64]字符數組顯示在下面的代碼中。


//          0123456789012345678901234567890123456789012345678901234567890 123
char char7bit[64] = 
           " !'#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";


// Clock out and decode a 7-bit character from the track memory, returning the
// character value.  7-bit (alphanumeric) characters are found on Track A only.

char read7BitChar()
{
   int i, c;

   // Each character is composed of 7 bits, which we clock out of the track memory
   // beginning with the least significant bit.  Bit 7 is parity, which is ignored.

   c = 0;
   for (i = 1; i < 128; i *= 2) {
      c |= (readBit() * i);
   }
   c &= 0x3F;

   return char7bit[c];       // Decode/return the character using the 7-bit table.
}

....

   // Track A - 76 characters, 7 bits per alphanumberic character including parity.

   printf("Track A > ");   
             
   for (i = 0; i < 76; i++) {
      putchar(read7BitChar());
   }
   printf("\r\n\r\n");

   // At this point, we have read 532 bits of the 704-bit Track A memory on the 
   // card reader IC.  Flush the remaining 172 bits.

   for (i = 0; i < 172; i++) {
      readBit();
   }

軌道 A 上保存的實際數據因卡類型而異。此外,軌道 A 可以包含字母字符。因此,軌道A通常用于存儲持卡人的姓名,可能的地址,帳號和其他數字信息。如上面的代碼所示,在時鐘輸出磁道B數據之前,必須讀出磁道A存儲器的所有704位(即使并非所有位都包含編碼數據)。


翻譯軌道 B


磁道 B 的編碼與磁道 A 類似,不同之處在于這些字符是 5 位(4 位,加 1 位奇偶校驗位)編碼,而不是 7 位。軌道 B 字符集僅包含數字字符和符號,如下面的char5bit[16]字符數組所示。


//                   0123456789012345
char char5bit[16] = "0123456789:;<=>?";

// Clock out and decode a 5-bit character from the track memory, returning the
// character value.  5-bit (numeric+symbol) characters are found on Tracks B and C.

char read5BitChar()
{
   int i, c;

   // Each character is composed of 5 bits, which we clock out of the track memory
   // beginning with the least significant bit.  Bit 5 is parity, which is ignored.

   c = 0;
   for (i = 1; i < 32; i *= 2) {
      c |= (readBit() * i);
   }
   c &= 0x0F;

   return char5bit[c];       // Decode/return the character using the 5-bit table.
}

....

   // Track B - 40 characters, 5 bits per numeric/symbol character including parity.

   printf("Track B > ");   
             
   for (i = 0; i < 40; i++) {
      putchar(read5BitChar());
   }
   printf("\r\n\r\n");

與磁道 A 結束時一樣,在繼續讀取磁道 C 之前,必須讀取磁道 B 存儲器中的所有剩余位(如果需要磁道 C)。由于代碼已經從磁道 B 存儲器讀取了 200 位(40 個字符 x 5 位),因此在訪問磁道 C 數據之前,必須額外輸出 504 位。


翻譯軌道 C


磁道 C 以與磁道 B 相同的方式編碼,并使用與磁道 B 相同的字符集,最多 107 個 編碼的 7 位字符。軌道C最初旨在包含一個可重寫的數據區域以支持離線金融交易,但它并不常用。大多數磁條卡不包含磁道C上的編碼數據。

結論

磁條卡用于各種金融、訪問控制、政府和儲值應用。通過在DS5250評估板中增加一個簡單的MagTek刷卡讀卡器和少量支持硬件,可以開發將磁條卡讀取功能與安全微控制器的更高級別的安全性和加密功能相結合的應用。使用Keil的μVision C編譯器,可以在DS5250安全微控制器上輕松實現磁條卡讀取和解碼演示的應用。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7902

    瀏覽量

    153656
  • 解碼器
    +關注

    關注

    9

    文章

    1163

    瀏覽量

    41675
  • 讀卡器
    +關注

    關注

    2

    文章

    429

    瀏覽量

    40060
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    電腦相關的讀卡器

    讀卡器是從卡形存儲介質讀取數據的數據輸入設備。讀卡器可根據不同類型的卡分為接觸式和非接觸式IC卡讀卡器和遠程讀卡器。觸點IC卡遵循ISO7816標準
    發表于 09-16 16:51

    高速安全微控制DS5250電子資料

    概述:DS5250是Maxim公司生產的一款安全微控制,它是該系列中的一款高度安全、4時鐘每機器周期、100%兼容8051指令集的微控制DS5250設計用作加密引擎,應用于密碼鍵
    發表于 04-21 06:26

    分享一款不錯的手機磁條讀卡器參考設計應用報告

    分享一款不錯的手機磁條讀卡器參考設計應用報告
    發表于 05-18 06:10

    DS5250 pdf datasheet

    GENERAL DESCRIPTIONThe DS5250 is a highly secure, 4 clocks-per-machinecycle, 100
    發表于 07-25 01:23 ?90次下載

    DS5250中文資料 (高速安全微控制)

    DS5250是Maxim安全微控制系列中的一款高度安全、4時鐘每機器周期、100%兼容8051指令集的微控制。DS5250設計用作加密引擎,應用于密碼鍵盤、金融終端及其它數據安全性
    發表于 05-11 09:37 ?162次下載

    DS5250與磁卡讀卡器的連接

    摘要:本應用筆記闡述了在DS5250安全微控制上輕松實現磁卡讀卡和解碼操作的設計。文章還演示了開發同時具有磁卡讀卡功能和安全微控制高級加
    發表于 04-23 10:34 ?1953次閱讀
    <b class='flag-5'>DS5250</b>與磁卡<b class='flag-5'>讀卡器</b>的連接

    利用DS5250產生RSA密鑰

    摘要:DS5250微控制評估(EV)板是經過驗證的用于評估這款高速微控制的平臺,本應用筆記介紹了如何設置評估板,并根據應用的位長需要產生RSA密鑰的方法。采用Keil µVision2&re
    發表于 04-23 17:46 ?1327次閱讀

    讀卡器接口類型

    讀卡器接口類型              接口類型是指讀卡器與電腦主機之間的連接方
    發表于 01-09 15:06 ?4566次閱讀

    磁卡讀卡器的方案介紹

    磁條讀卡器方案現場演示
    的頭像 發表于 08-16 01:02 ?4835次閱讀

    DS5250微控制的模冪時序

    模冪用于許多加密算法。任何實現這些算法之一的人都必須知道操作大約需要多長時間。本應用筆記描述了如何在DS5250高速、安全微控制上完成模冪運算。它列出了運行各種表達式的典型時間,并描述了獲取計時的代碼流。
    的頭像 發表于 01-11 16:02 ?936次閱讀
    <b class='flag-5'>DS5250</b>微控制<b class='flag-5'>器</b>的模冪時序

    利用DS5250產生RSA密鑰

    DS5250微控制評估(EV)板是經過驗證的用于評估這款高速微控制的平臺,本應用筆記介紹了如何設置評估板,并根據應用的位長需要產生RSA密鑰的方法。采用Keil μVision2?編譯
    的頭像 發表于 02-09 15:39 ?836次閱讀
    利用<b class='flag-5'>DS5250</b>產生RSA密鑰

    使用DS5250作為DS5002的直接升級

    DS5250高速安全微控制采用80引腳四方扁平封裝(QFP),是DS5002FP的引腳兼容、高性能升級版。從DS5002FP升級到DS5250
    的頭像 發表于 03-01 16:29 ?1806次閱讀
    使用<b class='flag-5'>DS5250</b>作為<b class='flag-5'>DS</b>5002的直接升級

    使用Keil C編譯處理DS5250

    本應用筆記介紹如何使用Keil μVision2工具套件為DS5240或DS5250高速安全微控制創建和編譯C應用。還描述了使用 ROM 引導加載程序和微控制工具包將編譯的應用程序
    的頭像 發表于 03-01 17:10 ?1300次閱讀
    使用Keil C編譯<b class='flag-5'>器</b>處理<b class='flag-5'>DS5250</b>

    通過將DS5250用作安全協處理來提高系統安全性

    本應用筆記介紹如何將Maxim DS5250高速安全微處理器用作安全協處理,以保護密碼、PIN、加密密鑰和其他關鍵數據。DS5250采用三路DES總線加密、精心設計的篡改傳感和電池
    的頭像 發表于 03-02 13:57 ?1120次閱讀
    通過將<b class='flag-5'>DS5250</b>用作安全協處理<b class='flag-5'>器</b>來提高系統安全性

    手機磁條讀卡器的實現

    電子發燒友網站提供《手機磁條讀卡器的實現.pdf》資料免費下載
    發表于 11-08 15:54 ?0次下載
    手機<b class='flag-5'>磁條</b>卡<b class='flag-5'>讀卡器</b>的實現