Index: AES_TEST/prj/MDK/Objects/YC3121_Keil.axf
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: AES_TEST/prj/MDK/Objects/YC3121_Keil.axf
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: AES_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -236,7 +236,7 @@
       <GroupNumber>2</GroupNumber>
       <FileNumber>3</FileNumber>
       <FileType>1</FileType>
-      <tvExp>1</tvExp>
+      <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
       <bDave2>0</bDave2>
       <PathWithFileName>..\..\user\main.c</PathWithFileName>
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: AES_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: AES_TEST/user/bt_code.h
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/user/bt_code.h	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/user/bt_code.h	(nonexistent)
@@ -1 +0,0 @@
-extern const unsigned char bt_code[];
\ No newline at end of file
Index: AES_TEST/user/bt_code.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/user/bt_code.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/user/bt_code.c	(nonexistent)
@@ -1,116 +0,0 @@
-const unsigned char bt_code[] = {
-0x00,0x02,0xaa,0x55,0x7a,0x03,0xc0,0x42,0x80,0x19,0xc0,0x43,0x00,0x1b,0xc0,0x43,
-0x80,0x1f,0xc0,0x44,0x00,0x1d,0xc0,0x44,0x80,0x28,0xc0,0x45,0x00,0x2d,0xc0,0x02,
-0x00,0x0d,0xc0,0x03,0x00,0x08,0x20,0x40,0x57,0xaf,0x24,0x36,0xd8,0xa5,0x20,0x40,
-0x00,0xb5,0x20,0x40,0x49,0x36,0x20,0x20,0x58,0xa6,0x09,0x80,0x00,0x18,0x78,0x28,
-0x7c,0x00,0xdb,0x60,0x06,0x64,0x1f,0xef,0x7e,0x00,0x1f,0xf1,0x7e,0x00,0xe7,0xe6,
-0x00,0x05,0x20,0x23,0x46,0x49,0x78,0x36,0xfc,0x00,0x6f,0xe2,0x00,0x17,0x1f,0xe0,
-0x84,0x00,0x20,0x40,0x00,0xb9,0x20,0x20,0x58,0x97,0x20,0x40,0x00,0xb1,0x20,0x20,
-0x48,0xf6,0x20,0x40,0x00,0xb3,0x20,0x20,0x49,0x16,0x20,0x40,0x00,0xb7,0x20,0x20,
-0x49,0x22,0x60,0x42,0x00,0x17,0x20,0x20,0x00,0xbb,0x20,0x40,0x00,0xbb,0xda,0x20,
-0x89,0x60,0x20,0x40,0x00,0xa7,0xda,0x20,0x00,0x10,0x20,0x40,0x00,0xa7,0xda,0x20,
-0x00,0x00,0x20,0x20,0x00,0xd6,0x60,0x42,0x00,0x17,0x20,0x40,0x00,0xb9,0x58,0x00,
-0x03,0x84,0x20,0x40,0x4a,0x8e,0x20,0x20,0x49,0x36,0x70,0x89,0x07,0xff,0x70,0x80,
-0x42,0x05,0x20,0x00,0x03,0xe8,0x6f,0xe2,0x4f,0xef,0x24,0x7a,0x00,0x00,0x70,0x4f,
-0xef,0x01,0x70,0x89,0x4e,0xc2,0x70,0x89,0x4e,0xc0,0x20,0x40,0x00,0xca,0xc0,0x81,
-0x00,0x43,0x20,0x00,0x75,0x30,0x20,0x40,0x00,0xca,0xc0,0x81,0x00,0x43,0x20,0x00,
-0x27,0x10,0xda,0x20,0x89,0x56,0xda,0x40,0x00,0xf0,0x20,0x40,0x00,0xd1,0xda,0x20,
-0x89,0x55,0x20,0x40,0x00,0xa7,0xda,0x20,0x00,0x00,0x20,0x40,0x00,0xd6,0x20,0x60,
-0x00,0x00,0x20,0x20,0x00,0x43,0x20,0x40,0x00,0x46,0x20,0x20,0x48,0xf5,0x20,0x40,
-0x00,0x6e,0x20,0x40,0x00,0x77,0x79,0x20,0x2a,0x00,0x78,0x46,0xfc,0x00,0x78,0x2e,
-0xfc,0x00,0x78,0x30,0x7c,0x00,0x78,0x50,0xfc,0x00,0x19,0x31,0x7e,0x00,0x1f,0xec,
-0xfe,0x00,0x1f,0xf1,0xfe,0x00,0x08,0x00,0x86,0x28,0x78,0x24,0xfc,0x00,0x6f,0xe2,
-0x43,0xae,0x08,0x00,0x86,0x08,0xef,0xe2,0x00,0x06,0x1f,0xe1,0x72,0x3f,0x08,0x00,
-0x86,0x08,0x20,0x22,0x80,0x5b,0xef,0xe2,0x00,0x06,0x08,0x00,0x86,0x08,0xc2,0x00,
-0x00,0x58,0x78,0x24,0x7c,0x00,0x08,0x00,0x86,0x18,0x78,0x44,0x7c,0x00,0x37,0xd3,
-0x82,0x00,0x20,0x00,0x00,0x64,0x20,0x60,0x00,0x00,0x78,0x3b,0x7c,0x00,0x70,0x89,
-0x14,0x07,0x20,0x60,0x00,0x00,0x78,0x5b,0x7c,0x00,0x70,0x89,0x14,0x03,0x20,0x60,
-0x00,0x00,0x58,0x71,0x76,0x41,0x1f,0xed,0x7e,0x00,0x1f,0xe1,0xfe,0x29,0x98,0x00,
-0x12,0x00,0x58,0x55,0x55,0x55,0x67,0xe6,0x04,0x63,0x20,0x60,0x00,0x00,0x78,0x44,
-0xfc,0x00,0x78,0x43,0xfc,0x00,0x6f,0xe6,0x04,0x63,0x98,0x00,0x1e,0x00,0x6f,0xe2,
-0x00,0x16,0x1f,0xed,0x84,0x00,0x79,0x20,0x04,0x01,0x18,0x43,0x1c,0x00,0x20,0x60,
-0x00,0x00,0x20,0x40,0x00,0x7c,0x20,0x20,0x49,0x30,0x20,0x40,0x00,0x7c,0x20,0x40,
-0x49,0x1c,0x20,0x20,0x49,0x21,0x20,0x40,0x49,0x15,0x6f,0xe2,0x00,0x16,0x1f,0xe3,
-0x84,0x00,0x20,0x60,0x00,0x00,0x20,0x40,0x00,0x79,0x20,0x40,0x00,0x6e,0x78,0x56,
-0xfc,0x00,0x78,0x26,0xfc,0x00,0x78,0x4e,0xfc,0x00,0x78,0x30,0xfc,0x00,0x78,0x50,
-0x7c,0x00,0x19,0x62,0x36,0x00,0x37,0xc1,0x84,0x00,0x24,0x2c,0x48,0xf5,0x1b,0x42,
-0x04,0x00,0xdd,0x20,0x01,0xe0,0x1c,0x22,0x50,0x00,0x78,0x24,0xfc,0x00,0x09,0x80,
-0x00,0x08,0x19,0x89,0x7e,0x00,0x67,0xe2,0x02,0xd5,0x09,0x80,0x00,0x08,0x19,0x89,
-0x7e,0x00,0xe7,0xe2,0x00,0x05,0x1f,0xe1,0x72,0x3f,0x20,0x22,0x80,0x9a,0x09,0x80,
-0x00,0x08,0x19,0x89,0x7e,0x00,0xe7,0xe2,0x00,0x05,0xc2,0x00,0x00,0x96,0x09,0x80,
-0x00,0x18,0x78,0x28,0x7c,0x00,0xdb,0x60,0x06,0x64,0x1f,0xef,0x7e,0x00,0x1f,0xf1,
-0x7e,0x00,0xe7,0xe6,0x00,0x05,0x20,0x40,0x49,0xba,0x20,0x23,0x48,0xf5,0x78,0x36,
-0xfc,0x00,0x6f,0xe2,0x00,0x17,0x1f,0xe0,0xa2,0x02,0x20,0x40,0x49,0x80,0x20,0x20,
-0x49,0x15,0x58,0x00,0x00,0x00,0x67,0xf0,0x0a,0x96,0xdf,0x20,0x00,0x08,0xda,0x40,
-0x0a,0x96,0x20,0x40,0x00,0xcd,0xe7,0xe2,0x00,0x12,0x1a,0x40,0xa4,0x01,0x1a,0x20,
-0xa2,0x01,0xc2,0x00,0x00,0xab,0x20,0x60,0x00,0x00,0xda,0x40,0x00,0xfe,0x20,0x20,
-0x00,0xd2,0xda,0x40,0x00,0xfd,0x20,0x20,0x00,0xd2,0xda,0x40,0x00,0xfc,0x20,0x20,
-0x00,0xd2,0xda,0x40,0x00,0xfb,0x20,0x20,0x00,0xd2,0x18,0x42,0x24,0x00,0x20,0x20,
-0x00,0xd2,0x18,0x41,0xa4,0x80,0x20,0x20,0x00,0xd2,0x67,0xe2,0x89,0x4b,0x70,0x89,
-0x4e,0xc5,0x70,0x89,0x4e,0xc4,0x6f,0xe2,0x89,0x91,0xc4,0x00,0x80,0x00,0x20,0x20,
-0x00,0xc0,0x6f,0xe2,0x89,0x91,0xc3,0x00,0x00,0xc3,0x6f,0xe2,0x89,0x90,0x70,0x89,
-0x4e,0xc6,0x70,0x89,0x4e,0xc4,0x20,0x00,0x03,0xe8,0x20,0x60,0x00,0x00,0x58,0x00,
-0x00,0x02,0x20,0x40,0x00,0xbd,0x20,0x20,0x00,0xc3,0x20,0x40,0x00,0xd6,0x58,0x00,
-0x00,0x06,0x20,0x40,0x00,0xbd,0x20,0x20,0x00,0xc3,0x20,0x40,0x00,0xd6,0x58,0x00,
-0x00,0x05,0x20,0x40,0x00,0xbd,0x1a,0x42,0x7e,0x00,0x20,0x20,0x00,0xbd,0x58,0x00,
-0x00,0x0b,0x20,0x40,0x00,0xbd,0x1a,0x2c,0xfe,0x00,0x20,0x40,0x00,0xbd,0x58,0x00,
-0x00,0x03,0x20,0x40,0x00,0xbd,0x1a,0x21,0x7e,0xff,0x20,0x20,0x00,0xbd,0x3f,0xc9,
-0xaa,0x55,0x01,0x00,0x92,0x40,0x0a,0xaa,0x55,0x01,0x00,0x54,0x46,0x40,0xaa,0x55,
-0x01,0x00,0x06,0x42,0x13,0xaa,0x55,0x08,0x00,0x98,0x40,0xff,0xff,0x8f,0xf8,0x9b,
-0x9d,0x59,0x83,0xaa,0x55,0x03,0x00,0x14,0x42,0x07,0x4a,0x05,0xaa,0x55,0x04,0x00,
-0x3d,0x45,0x00,0x7f,0x00,0x07,0xaa,0x55,0x03,0x00,0x2d,0x46,0x03,0x00,0x04,0xaa,
-0x55,0x01,0x00,0x2c,0x46,0x01,0xaa,0x55,0x06,0x00,0x57,0x46,0x04,0x30,0x30,0x30,
-0x30,0x30,0xaa,0x55,0x10,0x00,0xf0,0x4f,0x00,0x1c,0xff,0x1f,0x00,0x1c,0x00,0x1c,
-0x00,0x4c,0xe0,0x4f,0x00,0x4c,0x00,0x4c,0xaa,0x55,0x02,0x00,0x68,0x46,0x00,0x01,
-0xaa,0x55,0x01,0x00,0x6c,0x46,0x03,0xaa,0x55,0x01,0x00,0x6f,0x46,0x07,0xaa,0x55,
-0x03,0x00,0xaa,0x40,0x24,0x04,0x04,0xaa,0x55,0x01,0x00,0x79,0x46,0x00,0xaa,0x55,
-0x01,0x00,0x91,0x40,0x00,0xaa,0x55,0x03,0x00,0x54,0x41,0x00,0x01,0x08,0xaa,0x55,
-0x01,0x00,0x74,0x41,0x02,0xaa,0x55,0x01,0x00,0x93,0x40,0x03,0xaa,0x55,0x01,0x00,
-0x6d,0x46,0x28,0xaa,0x55,0x06,0x00,0xa0,0x40,0xa7,0x2a,0x2a,0x31,0x10,0x3a,0xaa,
-0x55,0x0c,0x00,0xe7,0x44,0x0b,0x59,0x69,0x63,0x68,0x69,0x70,0x20,0x33,0x31,0x32,
-0x31,0xaa,0x55,0x03,0x00,0xe4,0x41,0x20,0x00,0x01,0xaa,0x55,0x01,0x00,0xe8,0x41,
-0x00,0xaa,0x55,0x01,0x00,0x90,0x44,0x01,0xaa,0x55,0x01,0x00,0x5f,0x44,0x07,0xaa,
-0x55,0x01,0x00,0x98,0x44,0x01,0xaa,0x55,0x04,0x00,0x75,0x46,0x09,0x00,0x2f,0x00,
-0xaa,0x55,0x01,0x00,0x40,0x43,0x01,0xaa,0x55,0x02,0x00,0x54,0x44,0xf0,0x00,0xaa,
-0x55,0x01,0x00,0x6e,0x46,0x05,0xaa,0x55,0x06,0x00,0x72,0x44,0x21,0x22,0x00,0x33,
-0x02,0x3a,0xaa,0x55,0x10,0x00,0x81,0x43,0x0f,0x59,0x69,0x63,0x68,0x69,0x70,0x20,
-0x33,0x31,0x32,0x31,0x20,0x4d,0x6f,0x75,0xaa,0x55,0x04,0x00,0x41,0x43,0x03,0x02,
-0x01,0x0e,0xaa,0x55,0x13,0x00,0x61,0x43,0x0e,0x11,0x09,0x59,0x69,0x63,0x68,0x69,
-0x70,0x20,0x31,0x30,0x32,0x31,0x73,0x20,0x4d,0x6f,0x75,0xaa,0x55,0x07,0x00,0x25,
-0x44,0x02,0x03,0x00,0x05,0x10,0x02,0x03,0xaa,0x55,0x08,0x00,0x68,0x44,0x08,0x00,
-0x10,0x00,0x00,0x00,0x2c,0x01,0xaa,0x55,0x01,0x00,0x78,0x44,0xb5,0xaa,0x55,0x01,
-0x00,0x7a,0x44,0x17,0xaa,0x55,0x02,0x00,0xcc,0x44,0x31,0x00,0xaa,0x55,0x01,0x00,
-0xd1,0x40,0x01,0xaa,0x55,0x0c,0x00,0x49,0x45,0x05,0x03,0x00,0x12,0x00,0x01,0x01,
-0x00,0x01,0x11,0x03,0x00,0xaa,0x55,0x01,0x00,0x5f,0x45,0x00,0xaa,0x55,0x02,0x00,
-0x47,0x45,0x83,0x46,0xaa,0x55,0xb8,0x00,0x83,0x46,0x03,0x12,0x00,0x01,0x00,0x00,
-0x01,0x00,0x01,0x00,0x01,0x36,0x00,0x52,0x09,0x00,0x00,0x0a,0x00,0x01,0x00,0x01,
-0x09,0x00,0x01,0x35,0x03,0x19,0x12,0x00,0x09,0x00,0x04,0x35,0x0d,0x35,0x06,0x19,
-0x01,0x00,0x09,0x00,0x01,0x35,0x03,0x19,0x00,0x01,0x09,0x00,0x09,0x35,0x08,0x35,
-0x06,0x19,0x12,0x00,0x09,0x01,0x00,0x09,0x02,0x00,0x09,0x01,0x03,0x09,0x02,0x01,
-0x09,0x05,0xac,0x09,0x02,0x02,0x09,0x02,0x39,0x09,0x02,0x03,0x09,0x06,0x44,0x09,
-0x02,0x04,0x28,0x01,0x09,0x02,0x05,0x09,0x00,0x02,0x03,0x11,0x01,0x00,0x03,0x01,
-0x00,0x00,0x01,0x00,0x03,0x36,0x00,0x46,0x09,0x00,0x00,0x0a,0x00,0x01,0x00,0x03,
-0x09,0x00,0x01,0x35,0x03,0x19,0x11,0x01,0x09,0x00,0x02,0x0a,0x00,0x00,0x00,0x00,
-0x09,0x00,0x04,0x35,0x0c,0x35,0x03,0x19,0x01,0x00,0x35,0x05,0x19,0x00,0x03,0x08,
-0x01,0x09,0x00,0x06,0x35,0x09,0x09,0x65,0x6e,0x09,0x00,0x6a,0x09,0x01,0x00,0x09,
-0x01,0x00,0x25,0x0a,0x53,0x50,0x50,0x20,0x73,0x6c,0x61,0x76,0x65,0x00,0x00,0x00,
-0x01,0x00,0xaa,0x55,0x02,0x00,0x8e,0x44,0xaf,0x47,0xaa,0x55,0x8a,0x00,0xaf,0x47,
-0x01,0x00,0x02,0x00,0x28,0x02,0x00,0x18,0x02,0x00,0x02,0x03,0x28,0x01,0x0a,0x03,
-0x00,0x02,0x00,0x2a,0x13,0x41,0x73,0x74,0x20,0x4c,0x45,0x20,0x4d,0x6f,0x75,0x73,
-0x65,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x04,0x00,0x02,0x00,0x28,0x10,0x55,0xe4,
-0x05,0xd2,0xaf,0x9f,0xa9,0x8f,0xe5,0x4a,0x7d,0xfe,0x43,0x53,0x53,0x49,0x05,0x00,
-0x02,0x03,0x28,0x01,0x10,0x06,0x00,0x02,0x87,0x05,0x14,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,
-0x00,0x02,0x02,0x29,0x02,0x00,0x00,0x08,0x00,0x02,0x03,0x28,0x01,0x0e,0x09,0x00,
-0x02,0x98,0x05,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xaa,0x55,0x02,0x00,0x10,0x40,
-0xe0,0x07,0xaa,0x55,0x01,0x00,0x20,0x40,0x50,0xaa,0x55,0x04,0x00,0x79,0x41,0x0a,
-0x0b,0xb2,0x32,0xaa,0x55,0x02,0x00,0x57,0x41,0x8b,0x0b,0xaa,0x55,0x08,0x00,0xa1,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xaa,0x55,0x02,0x00,0xbd,0x40,0x02,
-0x24,0xaa,0x55,0x08,0x00,0xad,0x40,0x24,0x00,0x80,0x00,0x24,0x00,0x80,0x00,0xaa,
-0x55,0x02,0x00,0xbb,0x40,0x20,0x00,0xaa,0x55,0x04,0x00,0xb7,0x40,0x20,0x00,0x00,
-0x20,0xaa,0x55,0x04,0x00,0xbf,0x40,0x80,0x04,0x00,0x10,0xaa,0x55,0x05,0x00,0xe2,
-0x44,0x08,0x0e,0x05,0x04,0x00,0xaa,0x55,0x02,0x00,0x02,0x42,0x30,0x1f,0xaa,0x55,
-0x01,0x00,0x10,0x42,0x20,0xaa,0x55,0x01,0x00,0xe0,0x41,0x01,0xaa,0x55,0x01,0x00,
-0xe2,0x41,0xff,0xaa,0x55,0x02,0x00,0xc3,0x40,0xe2,0x41,0x97,0xc3
-};
Index: AES_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/AES_TEST/user/main.c	(working copy)
@@ -2,21 +2,21 @@
   ******************************************************************************
   * @file    3121Demo_1.0V\ModuleDemo\CryptTest\AES_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    11-Dec-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   AES TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -48,14 +48,14 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 AES test Demo V1.0.\r\n");
-	
+
 	test_aes();
-	
+
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -73,7 +73,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -94,43 +94,43 @@
 {
 	uint32_t t;
 
-	uint8_t plain[] = {0x6B, 0xC1, 0xBE, 0xE2, 0x2E, 0x40, 0x9F, 0x96, 0xE9, 0x3D, 0x7E, 0x11, 0x73, 0x93, 0x17, 0x2A, 
+	uint8_t plain[] = {0x6B, 0xC1, 0xBE, 0xE2, 0x2E, 0x40, 0x9F, 0x96, 0xE9, 0x3D, 0x7E, 0x11, 0x73, 0x93, 0x17, 0x2A,
 										 0xAE, 0x2D, 0x8A, 0x57, 0x1E, 0x03, 0xAC, 0x9C, 0x9E, 0xB7, 0x6F, 0xAC, 0x45, 0xAF, 0x8E, 0x51};
-		 
+
 	uint8_t key128[] = {0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C};
-	uint8_t key192[] = {0x8E, 0x73, 0xB0, 0xF7, 0xDA, 0x0E, 0x64, 0x52, 0xC8, 0x10, 0xF3, 0x2B, 0x80, 0x90, 0x79, 0xE5, 
+	uint8_t key192[] = {0x8E, 0x73, 0xB0, 0xF7, 0xDA, 0x0E, 0x64, 0x52, 0xC8, 0x10, 0xF3, 0x2B, 0x80, 0x90, 0x79, 0xE5,
 											0X62, 0xF8, 0xEA, 0xD2, 0x52, 0x2C, 0x6B, 0x7B};
-	uint8_t key256[] = {0x60, 0x3D, 0xEB, 0x10, 0x15, 0xCA, 0x71, 0xBE, 0x2B, 0x73, 0xAE, 0xF0, 0x85, 0x7D, 0x77, 0x81, 
+	uint8_t key256[] = {0x60, 0x3D, 0xEB, 0x10, 0x15, 0xCA, 0x71, 0xBE, 0x2B, 0x73, 0xAE, 0xF0, 0x85, 0x7D, 0x77, 0x81,
 											0x1F, 0x35, 0x2C, 0x07, 0x3B, 0x61, 0x08, 0xD7, 0x2D, 0x98, 0x10, 0xA3, 0x09, 0x14, 0xDF, 0xF4};
-		
+
 	uint8_t iv[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F};
 
-	uint8_t eCipher[3][32] = {{0x3A, 0xD7, 0x7B, 0xB4, 0x0D, 0x7A, 0x36, 0x60, 0xA8, 0x9E, 0xCA, 0xF3, 0x24, 0x66, 0xEF, 0x97, 
+	uint8_t eCipher[3][32] = {{0x3A, 0xD7, 0x7B, 0xB4, 0x0D, 0x7A, 0x36, 0x60, 0xA8, 0x9E, 0xCA, 0xF3, 0x24, 0x66, 0xEF, 0x97,
 												0xF5, 0xD3, 0xD5, 0x85, 0x03, 0xB9, 0x69, 0x9D, 0xE7, 0x85, 0x89, 0x5A, 0x96, 0xFD, 0xBA, 0xAF},
 											 {0xBD, 0x33, 0x4F, 0x1D, 0x6E, 0x45, 0xF2, 0x5F, 0xF7, 0x12, 0xA2, 0x14, 0x57, 0x1F, 0xA5, 0xCC,
 												0x97, 0x41, 0x04, 0x84, 0x6D, 0x0A, 0xD3, 0xAD, 0x77, 0x34, 0xEC, 0xB3, 0xEC, 0xEE, 0x4E, 0xEF},
-											 {0xF3, 0xEE, 0xD1, 0xBD, 0xB5, 0xD2, 0xA0, 0x3C, 0x06, 0x4B, 0x5A, 0x7E, 0x3D, 0xB1, 0x81, 0xF8,												 
-												0x59, 0x1C, 0xCB, 0x10, 0xD4, 0x10, 0xED, 0x26, 0xDC, 0x5B, 0xA7, 0x4A, 0x31, 0x36, 0x28, 0x70}};	
+											 {0xF3, 0xEE, 0xD1, 0xBD, 0xB5, 0xD2, 0xA0, 0x3C, 0x06, 0x4B, 0x5A, 0x7E, 0x3D, 0xB1, 0x81, 0xF8,
+												0x59, 0x1C, 0xCB, 0x10, 0xD4, 0x10, 0xED, 0x26, 0xDC, 0x5B, 0xA7, 0x4A, 0x31, 0x36, 0x28, 0x70}};
 
-	uint8_t cCipher[3][32] = {{0x76, 0x49, 0xAB, 0xAC, 0x81, 0x19, 0xB2, 0x46, 0xCE, 0xE9, 0x8E, 0x9B, 0x12, 0xE9, 0x19, 0x7D, 
+	uint8_t cCipher[3][32] = {{0x76, 0x49, 0xAB, 0xAC, 0x81, 0x19, 0xB2, 0x46, 0xCE, 0xE9, 0x8E, 0x9B, 0x12, 0xE9, 0x19, 0x7D,
 														 0x50, 0x86, 0xCB, 0x9B, 0x50, 0x72, 0x19, 0xEE, 0x95, 0xDB, 0x11, 0x3A, 0x91, 0x76, 0x78, 0xB2},
-														{0x4F, 0x02, 0x1D, 0xB2, 0x43, 0xBC, 0x63, 0x3D, 0x71, 0x78, 0x18, 0x3A, 0x9F, 0xA0, 0x71, 0xE8, 
+														{0x4F, 0x02, 0x1D, 0xB2, 0x43, 0xBC, 0x63, 0x3D, 0x71, 0x78, 0x18, 0x3A, 0x9F, 0xA0, 0x71, 0xE8,
 														 0xB4, 0xD9, 0xAD, 0xA9, 0xAD, 0x7D, 0xED, 0xF4, 0xE5, 0xE7, 0x38, 0x76, 0x3F, 0x69, 0x14, 0x5A},
-														{0xF5, 0x8C, 0x4C, 0x04, 0xD6, 0xE5, 0xF1, 0xBA, 0x77, 0x9E, 0xAB, 0xFB, 0x5F, 0x7B, 0xFB, 0xD6, 
-														 0x9C, 0xFC, 0x4E, 0x96, 0x7E, 0xDB, 0x80, 0x8D, 0x67, 0x9F, 0x77, 0x7B, 0xC6, 0x70, 0x2C, 0x7D}}; 
+														{0xF5, 0x8C, 0x4C, 0x04, 0xD6, 0xE5, 0xF1, 0xBA, 0x77, 0x9E, 0xAB, 0xFB, 0x5F, 0x7B, 0xFB, 0xD6,
+														 0x9C, 0xFC, 0x4E, 0x96, 0x7E, 0xDB, 0x80, 0x8D, 0x67, 0x9F, 0x77, 0x7B, 0xC6, 0x70, 0x2C, 0x7D}};
 
 	uint8_t cipher[32];
 	uint8_t mplain[32];
 
 	MyPrintf("\n*************AES Test In*************\n");
-														 
+
 	memset(cipher, 0, sizeof(cipher));
-	memset(mplain, 0, sizeof(mplain));											 
+	memset(mplain, 0, sizeof(mplain));
  	AES_Enc(ECB, cipher, sizeof(cipher), plain, sizeof(plain), key128, AES_128, iv, &RAND_RandP, NULL);
 	AES_Dec(ECB, mplain, sizeof(mplain), cipher, sizeof(cipher), key128, AES_128, iv, &RAND_RandP, NULL);
 	t = (!memcmp(&eCipher[0][0], cipher, sizeof(cipher)) && !memcmp(mplain, plain, sizeof(plain)));
 	MyPrintf("AES ECB key128 test: %2x\n", t);
-	
+
 	memset(cipher, 0, sizeof(cipher));
 	memset(mplain, 0, sizeof(mplain));
 	AES_Enc(ECB, cipher, sizeof(cipher), plain, sizeof(plain), key192, AES_192, iv, &RAND_RandP, NULL);
@@ -144,14 +144,14 @@
 	AES_Dec(ECB, mplain, sizeof(mplain), cipher, sizeof(cipher), key256, AES_256, iv, &RAND_RandP, NULL);
 	t = (!memcmp(&eCipher[2][0], cipher, sizeof(cipher)) && !memcmp(mplain, plain, sizeof(plain)));
 	MyPrintf("AES ECB key256 test: %2x\n", t);
-	
+
 	memset(cipher, 0, sizeof(cipher));
-	memset(mplain, 0, sizeof(mplain));											 
+	memset(mplain, 0, sizeof(mplain));
  	AES_Enc(CBC, cipher, sizeof(cipher), plain, sizeof(plain), key128, AES_128, iv, &RAND_RandP, NULL);
 	AES_Dec(CBC, mplain, sizeof(mplain), cipher, sizeof(cipher), key128, AES_128, iv, &RAND_RandP, NULL);
 	t = (!memcmp(&cCipher[0][0], cipher, sizeof(cipher)) && !memcmp(mplain, plain, sizeof(plain)));
 	MyPrintf("AES CBC key128 test: %2x\n", t);
-	
+
 	memset(cipher, 0, sizeof(cipher));
 	memset(mplain, 0, sizeof(mplain));
 	AES_Enc(CBC, cipher, sizeof(cipher), plain, sizeof(plain), key192, AES_192, iv, &RAND_RandP, NULL);
Index: DES_TEST/prj/MDK/Objects/YC3121_Keil.axf
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: DES_TEST/prj/MDK/Objects/YC3121_Keil.axf
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: DES_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/DES_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/DES_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -236,7 +236,7 @@
       <GroupNumber>2</GroupNumber>
       <FileNumber>3</FileNumber>
       <FileType>1</FileType>
-      <tvExp>1</tvExp>
+      <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
       <bDave2>0</bDave2>
       <PathWithFileName>..\..\user\main.c</PathWithFileName>
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -348,13 +336,13 @@
 
   <Group>
     <GroupName>crypt</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: DES_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/DES_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/DES_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: DES_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/DES_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/DES_TEST/user/main.c	(working copy)
@@ -2,21 +2,21 @@
   ******************************************************************************
   * @file    3121Demo_1.0V\ModuleDemo\CryptTest\DES_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    11-Dec-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   DES TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -49,15 +49,15 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 DES\\TDES test Demo V1.0.\r\n");
-	
+
 	test_des();
 	test_tdes();
-	
+
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -75,7 +75,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -104,46 +104,46 @@
 
 	DES_KeyTypeDef KEY = {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF};
 	uint8_t IV[8] = {0xF6, 0x9F, 0x24, 0x45, 0xDF, 0x4F, 0x9B, 0x17};
-	
+
 	uint8_t cCrypt[8] = {0x2D, 0x12, 0x1F, 0x90, 0xFC, 0xF6, 0x86, 0x31};
 	uint8_t eCrypt[8] = {0x72, 0x77, 0xA0, 0x0D, 0xC1, 0xC1, 0xC3, 0x6B};
-	
+
 	uint8_t plain[8] ={0};
 	uint8_t cipher[8] = {0};
 
 	uint8_t m = 0;
 
 	MyPrintf("\n*************DES Test In*************\n");
-														 
+
 	memset(plain, 0, sizeof(plain));
 	memset(cipher, 0, sizeof(cipher));
 	DES_Enc(ECB, cipher, sizeof(cipher), PLAIN, sizeof(PLAIN), KEY, NULL, &RAND_RandP, NULL);
 	t = (!memcmp(eCrypt, cipher, sizeof(cipher)));
 	MyPrintf("DES_Encrypt ECB test: %2x\n", t);
-	
+
 	DES_Dec(ECB, plain, sizeof(plain), cipher, sizeof(cipher), KEY, NULL, &RAND_RandP, NULL);
 	t = (!memcmp(plain, PLAIN, sizeof(PLAIN)));
 	MyPrintf("DES_Decrypt ECB test: %2x\n", t);
-	
+
 	memset(plain, 0, sizeof(plain));
 	memset(cipher, 0, sizeof(cipher));
 	DES_Enc(CBC, cipher, sizeof(cipher), PLAIN, sizeof(PLAIN), KEY, IV, &RAND_RandP, NULL);
 	t = (!memcmp(cCrypt, cipher, sizeof(cipher)));
 	MyPrintf("DES_Encrypt CBC test: %2x\n", t);
-	
+
 	DES_Dec(CBC, plain, sizeof(plain), cipher, sizeof(cipher), KEY, IV, &RAND_RandP, NULL);
 	t = (!memcmp(plain, PLAIN, sizeof(PLAIN)));
 	MyPrintf("DES_Decrypt CBC test: %2x\n", t);
-	
+
 	for (m = 0; m < 2; m++)
 	{
 		char s[30] = {0};
 		memset(xPlain, 0, sizeof(xPlain));
-		
+
 		RAND_Rand(xPlain[0], sizeof(xPlain[0]));
 		DES_Enc(modes[m], xCrypt, sizeof(xCrypt), xPlain[0], sizeof(xPlain[0]), KEY, NULL, &RAND_RandP, NULL);
 		DES_Dec(modes[m], xPlain[1], sizeof(xPlain[1]), xCrypt, sizeof(xCrypt), KEY, NULL, &RAND_RandP, NULL);
-		
+
 		if(!memcmp(xPlain[1], xPlain[0], sizeof(cipher)))
 		sprintf(s, "DES %d %s Test\n", sizeof(xPlain[0]), cmodes[m]);
 		MyPrintf("%2x, %s", t, s);
@@ -155,62 +155,60 @@
 	uint32_t t;
 	PACK_ModeTypeDef modes[2] = {ECB, CBC};
 	char *cmodes[2] = {"ECB", "CBC"};
-	
+
 	uint8_t PLAIN[8] = {0x6B, 0xC1, 0xBE, 0xE2, 0x2E, 0x40, 0x9F, 0x96};
 
 	TDES_KeyTypeDef KEY = {{0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF},
 						{0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, 0x01},
 						{0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, 0x01, 0x23}};
-										
+
 	uint8_t IV[8] = {0xF6, 0x9F, 0x24, 0x45, 0xDF, 0x4F, 0x9B, 0x17};
-	
 
 	uint8_t eCrypt[2][8] = {{0x06, 0xED, 0xE3, 0xD8, 0x28, 0x84, 0x09, 0x0A},
 							{0x71, 0x47, 0x72, 0xF3, 0x39, 0x84, 0x1D, 0x34}};
 
 	uint8_t cCrypt[2][8] = {{0x74, 0x01, 0xCE, 0x1E, 0xAB, 0x6D, 0x00, 0x3C},
 							 {0x20, 0x79, 0xC3, 0xD5, 0x3A, 0xA7, 0x63, 0xE1}};
-												 
+
 	uint8_t plain[8];
 	uint8_t cipher[8];
 
-
 	uint8_t xPlain[2][1024];
 	uint8_t xCrypt[1024];
-	
+
 	uint32_t m;
 
 	MyPrintf("\n*************TDES Test In*************\n");
-														 
+
 	memset(plain, 0, sizeof(plain));
 	memset(cipher, 0, sizeof(cipher));
 	TDES_Enc(modes[0], cipher, sizeof(cipher), PLAIN, sizeof(PLAIN), &KEY, NULL, &RAND_RandP, NULL);
 	t = (!memcmp(&eCrypt[1][0], cipher, sizeof(cipher)));
 	MyPrintf("TDES_Encrypt ECB test: %2x\n", t);
-	
+
 	TDES_Dec(modes[0], plain, sizeof(plain), cipher, sizeof(cipher), &KEY, NULL, &RAND_RandP, NULL);
 	t = (!memcmp(plain, PLAIN, sizeof(PLAIN)));
 	MyPrintf("TDES_Decrypt ECB test: %2x\n", t);
-	
+
 	memset(plain, 0, sizeof(plain));
 	memset(cipher, 0, sizeof(cipher));
 	TDES_Enc(modes[1], cipher, sizeof(cipher), PLAIN, sizeof(PLAIN), &KEY, IV, &RAND_RandP, NULL);
 	t = (!memcmp(&cCrypt[1][0], cipher, sizeof(cipher)));
 	MyPrintf("TDES_Encrypt CBC test: %2x\n", t);
-	
+
 	TDES_Dec(modes[1], plain, sizeof(plain), cipher, sizeof(cipher), &KEY, IV, &RAND_RandP, NULL);
 	t = (!memcmp(plain, PLAIN, sizeof(PLAIN)));
 	MyPrintf("TDES_Decrypt CBC test: %2x\n", t);
-	
+
 	for (m = 0; m < 2; m++)
 	{
 		char s[30] = {0};
 		memset(xPlain, 0, sizeof(xPlain));
-		
+
 		RAND_Rand(xPlain[0], sizeof(xPlain[0]));
 		TDES_Enc(modes[m], xCrypt, sizeof(xCrypt), xPlain[0], sizeof(xPlain[0]), &KEY, NULL, &RAND_RandP, NULL);
 		TDES_Dec(modes[m], xPlain[1], sizeof(xPlain[1]), xCrypt, sizeof(xCrypt), &KEY, NULL, &RAND_RandP, NULL);
-		
+
 		if(!memcmp(xPlain[1], xPlain[0], sizeof(cipher)))
 		sprintf(s, "TDES %d %s Test\n", sizeof(xPlain[0]), cmodes[m]);
 		MyPrintf("%2x, %s", t, s);
Index: RSA_GENKEY_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_GENKEY_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_GENKEY_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: RSA_GENKEY_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_GENKEY_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_GENKEY_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: RSA_GENKEY_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_GENKEY_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_GENKEY_TEST/user/main.c	(working copy)
@@ -1,22 +1,22 @@
 /**
   ******************************************************************************
-  * @file    3121Demo_1.0V\ModuleDemo\CryptTest\RSA_GENKEY_TEST\user\main.c
+  * @file    3121Demo\ModuleDemo\CryptTest\RSA_GENKEY_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    20-Feb-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   RSA GENKEY TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -51,14 +51,14 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 RSA_GENKEY test Demo V1.0.\r\n");
-	
+
 	test_rsa_genrsakey();
-	
+
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -76,7 +76,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -97,49 +97,49 @@
 {
 	RSA_PrivateKeyTypeDef pri_key;
 	RSA_PublicKeyTypeDef pub_key;
-	
+
 	uint8_t plain[2048 / 8];
 	uint8_t cipher[2048 / 8];
 	uint8_t tmp0[2048 / 8];
 	uint32_t ret = 0;
-	
+
 	MyPrintf("\r\n RSA_GenerateKey 1024");
 
 REPEAT_1024:
 	ret = RSA_GenerateKey(&pri_key, 0x10001, 1024, &RAND_RandP, NULL);
 	if (ret != RET_RSA_KEYGEN_SUCCESS) goto REPEAT_1024;
-	
+
 	MyPrintf("\r\n RSA_GenerateKey OK ");
 	memcpy_r(pri_key.p, pri_key.p, pri_key.bytes / 2);
 	memcpy_r(pri_key.q, pri_key.q, pri_key.bytes / 2);
 	memcpy_r(pri_key.n, pri_key.n, pri_key.bytes);
-	
+
 	printv(pri_key.p, pri_key.bytes / 2, "p");
 	printv(pri_key.q, pri_key.bytes / 2, "q");
 
 	printv(pri_key.n, pri_key.bytes, "n");
-	
+
 	MyPrintf("\n*************RSA 1024 Test In*************\n");
 	pri_key.bytes = 1024/8;//密钥bit长度
 
 	memcpy_r(pri_key.p, pri_key.p, pri_key.bytes / 2);
 	memcpy_r(pri_key.q, pri_key.q, pri_key.bytes / 2);
 	memcpy_r(pri_key.n, pri_key.n, pri_key.bytes);
-	
+
 	pub_key.bytes = pri_key.bytes;
 	memcpy(pub_key.e, pri_key.e, sizeof(pri_key.e));
 	memcpy(pub_key.n, pri_key.n, sizeof(pri_key.n));
 	memcpy(pub_key.n_c, pri_key.n_c, sizeof(pri_key.n_c));
 	memcpy(pub_key.n_q, pri_key.n_q, sizeof(pri_key.n_q));
-	
+
 	bn_read_string_to_bytes(plain, pri_key.bytes, PLAIN);
 	memcpy_r(plain, plain, 128);
-	
+
 	MyPrintf("\r\nRSA_public ret:%x\n", RSA_Public(cipher, plain, &pub_key, &RAND_RandP, NULL));
 	MyPrintf("\r\nRSA_private_crt ret:%x\n",RSA_Private_crt(tmp0, cipher,&pri_key, &RAND_RandP, NULL));
 	printv(tmp0, 10, "tmp0");
 	MyPrintf("\r\nTo compare test:%2x\n",(0 == memcmp(tmp0, plain, pri_key.bytes)));
-	
+
 	MyPrintf("\r\n RSA_GenerateKey 2048");
 
 REPEAT_2048:
@@ -155,23 +155,23 @@
 	printv(pri_key.q, pri_key.bytes / 2, "q");
 
 	printv(pri_key.n, pri_key.bytes, "n");
-	
+
 	MyPrintf("\n*************RSA 2048 Test In*************\n");
 	pri_key.bytes = 2048/8;//密钥bit长度
 
 	memcpy_r(pri_key.p, pri_key.p, pri_key.bytes / 2);
 	memcpy_r(pri_key.q, pri_key.q,pri_key.bytes / 2);
 	memcpy_r(pri_key.n, pri_key.n, pri_key.bytes);
-	
+
 	pub_key.bytes = pri_key.bytes;
 	memcpy(pub_key.e, pri_key.e, sizeof(pri_key.e));
 	memcpy(pub_key.n, pri_key.n, sizeof(pri_key.n));
 	memcpy(pub_key.n_c, pri_key.n_c, sizeof(pri_key.n_c));
 	memcpy(pub_key.n_q, pri_key.n_q, sizeof(pri_key.n_q));
-	
+
 	bn_read_string_to_bytes(plain, pri_key.bytes, PLAIN);
 	memcpy_r(plain, plain, 256);
-	
+
 	MyPrintf("\r\nRSA_public ret:%x\n", RSA_Public(cipher, plain, &pub_key, &RAND_RandP, NULL));
 	MyPrintf("\r\nRSA_private_crt ret:%x\n",RSA_Private_crt(tmp0, cipher,&pri_key, &RAND_RandP, NULL));
 	printv(tmp0, 10, "tmp0");
@@ -200,16 +200,16 @@
 {
     uint32_t i, j, slen;
     uint32_t d;
-	
+
     slen = strlen( s );
 
 	if ((len * 2) < slen)
 		return(-1);
 
 	memset(r, 0, len);
-	
+
 	len = len - 1;
-	
+
 	for( i = slen, j = 0; i > 0; i--, j++)
 	{
 		if( -1 == bn_get_digit( &d, s[i - 1] ) )
Index: RSA_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: RSA_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: RSA_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_TEST/user/main.c	(working copy)
@@ -1,22 +1,22 @@
 /**
   ******************************************************************************
-  * @file    3121Demo_1.0V\ModuleDemo\CryptTest\RSA_TEST\user\main.c
+  * @file    3121Demo\ModuleDemo\CryptTest\RSA_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    20-Feb-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   RSA TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -86,14 +86,14 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 RSA test Demo V1.0.\r\n");
-	
+
 	test_rsa_self();
-	
+
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -111,7 +111,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -132,12 +132,12 @@
 {
 	RSA_PrivateKeyTypeDef pri_key;
 	RSA_PublicKeyTypeDef pub_key;
-	
+
 	uint32_t ret;
 	uint8_t plain[2048 / 8];
  	uint8_t cipher[2048 / 8];
 	uint8_t tmp0[2048 / 8];
-	
+
 	MyPrintf("\n*************RSA 1024 Test In*************\n");
 	pri_key.bytes = 1024/8;//密钥bit长度
 	bn_read_string_to_bytes(pri_key.e, 4, RSA_E_1024);
@@ -147,28 +147,28 @@
 	memcpy_r(pri_key.p, pri_key.p, pri_key.bytes/2);
 	memcpy_r(pri_key.q, pri_key.q,pri_key.bytes/2);
 	ret = RSA_CompleteKey_e(&pri_key, &RAND_RandP, NULL);
-	
+
 	MyPrintf("ret: %x", ret);
-	
+
 	pub_key.bytes = pri_key.bytes;
 	memcpy(pub_key.e, pri_key.e, sizeof(pri_key.e));
 	memcpy(pub_key.n, pri_key.n, sizeof(pri_key.n));
 	memcpy(pub_key.n_c, pri_key.n_c, sizeof(pri_key.n_c));
 	memcpy(pub_key.n_q, pri_key.n_q, sizeof(pri_key.n_q));
-	
+
 	bn_read_string_to_bytes(plain, pri_key.bytes, PLAIN);
 	bn_read_string_to_bytes(cipher, pri_key.bytes, CIPHER_1024);
 	memcpy_r(plain, plain, 128);
 	memcpy_r(cipher,cipher, 128);
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Public(tmp0, plain, &pub_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_public test:%2x\n",(0 == memcmp(tmp0, cipher, pri_key.bytes)));
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Private_crt(tmp0,cipher,&pri_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_private_crt test:%2x\n",(0 == memcmp(tmp0, plain, pri_key.bytes)));
-	
+
 	MyPrintf("\n*************RSA 2048 Test In*************\n");
 	pri_key.bytes = 2048/8;//密钥bit长度
 	bn_read_string_to_bytes(pri_key.e, 4, RSA_E_2048);
@@ -178,24 +178,24 @@
 	memcpy_r(pri_key.p, pri_key.p, pri_key.bytes / 2);
 	memcpy_r(pri_key.q, pri_key.q,pri_key.bytes / 2);
 	ret = RSA_CompleteKey_e(&pri_key, &RAND_RandP, NULL);
-	
+
 	MyPrintf("ret: %x", ret);
-	
+
 	pub_key.bytes = pri_key.bytes;
 	memcpy(pub_key.e, pri_key.e, sizeof(pri_key.e));
 	memcpy(pub_key.n, pri_key.n, sizeof(pri_key.n));
 	memcpy(pub_key.n_c, pri_key.n_c, sizeof(pri_key.n_c));
 	memcpy(pub_key.n_q, pri_key.n_q, sizeof(pri_key.n_q));
-	
+
 	bn_read_string_to_bytes(plain, pri_key.bytes, PLAIN);
 	bn_read_string_to_bytes(cipher, pri_key.bytes, CIPHER_2048);
 	memcpy_r(plain, plain, 256);
 	memcpy_r(cipher,cipher, 256);
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Public(tmp0, plain, &pub_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_public test:%2x\n",(0 == memcmp(tmp0, cipher, pri_key.bytes)));
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Private_crt(tmp0,cipher,&pri_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_private_crt test:%2x\n",(0 == memcmp(tmp0, plain, pri_key.bytes)));
@@ -223,16 +223,16 @@
 {
     uint32_t i, j, slen;
     uint32_t d;
-	
+
     slen = strlen( s );
 
 	if ((len * 2) < slen)
 		return(-1);
 
 	memset(r, 0, len);
-	
+
 	len = len - 1;
-	
+
 	for( i = slen, j = 0; i > 0; i--, j++)
 	{
 		if( -1 == bn_get_digit( &d, s[i - 1] ) )
Index: RSA_TRIPLE_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_TRIPLE_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_TRIPLE_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: RSA_TRIPLE_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_TRIPLE_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_TRIPLE_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: RSA_TRIPLE_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/RSA_TRIPLE_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/RSA_TRIPLE_TEST/user/main.c	(working copy)
@@ -1,22 +1,22 @@
 /**
   ******************************************************************************
-  * @file    3121Demo_1.0V\ModuleDemo\CryptTest\RSA_TRIPLE_TEST\user\main.c
+  * @file    3121Demo\ModuleDemo\CryptTest\RSA_TRIPLE_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    20-Feb-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   RSA TRIPLE TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -37,7 +37,7 @@
 
 #define PLAIN "1234567890"
 
-#define KEY_LEN_1024	  1024 / 32
+#define KEY_LEN_1024		1024 / 32
 #define RSA_N_1024			"CDE42E9228172CBE4C542194BBB112728E0180FF7196B849D74F0630ED92AA5C4E04224E10C43881EBD710151E1F6BE47B2F688EAB880AC3D876C9702378CB524CA85637DE795D4393D129672DB4655C1EE82959ED051A92C1902135751CC4EC3E5B9050D5DF7A40610F61E382D864CC85F49F676E7C58A56E275D32648A65AB"
 #define RSA_E_1024			"010001"
 #define RSA_D_1024			"B5C1ED76EB5B620D709688BAA362F3351BB5AA2A571D45FD31CCBA5B712F1BA3B6DFA165271A020477AD78AE1BD4834BC58F998EF1507CA85DACA7B18E2EF1D5548723BD59DF8DA9B108DA2B5A455E9F3F12CD2DC0E549FF3EA534E0690AA393042062290931FA2B5AC1E9A1753C4791D74641103AFF067F7DD86B02C768CC59"
@@ -46,7 +46,7 @@
 #define RSA_DP_1024			"4A1B14FDDC04E6F16D2706CC0591AB51880EDA513E55B4AF29B7F8D2CC8221FAC3E18491FEC36AB34BCF1AA8796B29E190A233D34A8AD65E09A10FAC4AD35DCF"
 #define RSA_DQ_1024			"06CB8AC9B14C314674894D14155E2E33158D259EF5484A41F1EA17C01E1D1E39F7C7A7F68F3A7871500F38C70F5E6DDEAF8CDFDD55946B1E1FD46AED3E55D971"
 #define RSA_QP_1024			"7E4BDC3E7FA115F1AEFD49CE2FFA474E4777FFA5195A6909919DD093CFACDC98A13C72EFA2476F148E6BE7F330E4143BEDF8B9D965D3A3A2657890049DE98635"
-#define RSA_N_C_1024	  "64EFEDD782B6A49AEA1872EDD9275E49931139CCFF5AC92433B07B0A9EA6693FA7C9D1B3149E17C8DD0A1AB8548844EB6E0F50DC894AF0593E4E5B7E27690FB576642F98A1A33C22FF382DAFAEAECDFFDDFD3DD09A207C5B335DEC99C5D137426421E044312602DA6901A218EAB977D6A5C7B5A60191A4BDE0DBC63C407FEF8D"
+#define RSA_N_C_1024		"64EFEDD782B6A49AEA1872EDD9275E49931139CCFF5AC92433B07B0A9EA6693FA7C9D1B3149E17C8DD0A1AB8548844EB6E0F50DC894AF0593E4E5B7E27690FB576642F98A1A33C22FF382DAFAEAECDFFDDFD3DD09A207C5B335DEC99C5D137426421E044312602DA6901A218EAB977D6A5C7B5A60191A4BDE0DBC63C407FEF8D"
 #define RSA_P_C_1024		"5DA1CD5FA89C67FA7728E97B67BAAE72D1A9F03E7CC032ADB9EDAC3949667F4B04A1196D73F5D8A375B9E7E13A95D7F934ABB508EC96DE712644621864CB94B8"
 #define RSA_Q_C_1024		"4017B2E1F5500979E663ECE3A049678E49BCD4C822BE2E2C6C6C815A2EC23F5EEE7C153C6A2C2677F2419792F2BA6BE8B4C42943267922BF02B02AAAE7071E23"
 #define RSA_N_Q_1024		"85BA92FD"
@@ -86,14 +86,14 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 RSA test Demo V1.0.\r\n");
-	
+
 	test_rsa_triple();
-	
+
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -111,7 +111,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -132,71 +132,69 @@
 {
 	RSA_PrivateKeyTypeDef2 pri_key;
 	RSA_PublicKeyTypeDef2 pub_key;
-	
+
 	uint8_t plain[2048 / 8];
  	uint8_t cipher[2048 / 8];
 	uint8_t tmp0[2048 / 8];
-	
+
 	MyPrintf("\n*************RSA 1024 Test In*************\n");
 	pri_key.bytes = 1024 / 8;//密钥bit长度
 	/*e*/
 	bn_read_string_to_bytes(pri_key.e, 4, RSA_E_1024);
 	memcpy_r(pri_key.e, pri_key.e, 4);
-	
+
 	/*n*/
 	bn_read_string_to_bytes(pri_key.n, sizeof(pri_key.n), RSA_N_1024);
 	memcpy_r(pri_key.n, pri_key.n, sizeof(pri_key.n));
-	
+
 	/*d*/
 	bn_read_string_to_bytes(pri_key.d, sizeof(pri_key.d), RSA_D_1024);
 	memcpy_r(pri_key.d, pri_key.d, sizeof(pri_key.d));
-	
+
 	pub_key.bytes = pri_key.bytes;
 	memcpy(pub_key.e, pri_key.e, sizeof(pri_key.e));
 	memcpy(pub_key.n, pri_key.n, sizeof(pri_key.n));
 
-	
 	bn_read_string_to_bytes(plain, pri_key.bytes, PLAIN);
 	bn_read_string_to_bytes(cipher, pri_key.bytes, CIPHER_1024);
 	memcpy_r(plain, plain, 128);
 	memcpy_r(cipher,cipher, 128);
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Public_Func(tmp0, plain, &pub_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_Public_Func test:%2x\n",(0 == memcmp(tmp0, cipher, pri_key.bytes)));
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Private_Func(tmp0,cipher,&pri_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_Private_Func test:%2x\n",(0 == memcmp(tmp0, plain, pri_key.bytes)));
-	
+
 	MyPrintf("\n*************RSA 2048 Test In*************\n");
 	pri_key.bytes = 2048 / 8;//密钥bit长度
 	/*e*/
 	bn_read_string_to_bytes(pri_key.e, 4, RSA_E_2048);
 	memcpy_r(pri_key.e, pri_key.e, 4);
-	
+
 	/*n*/
 	bn_read_string_to_bytes(pri_key.n, sizeof(pri_key.n), RSA_N_2048);
 	memcpy_r(pri_key.n, pri_key.n, sizeof(pri_key.n));
-	
+
 	/*d*/
 	bn_read_string_to_bytes(pri_key.d, sizeof(pri_key.d), RSA_D_2048);
 	memcpy_r(pri_key.d, pri_key.d, sizeof(pri_key.d));
-	
+
 	pub_key.bytes = pri_key.bytes;
 	memcpy(pub_key.e, pri_key.e, sizeof(pri_key.e));
 	memcpy(pub_key.n, pri_key.n, sizeof(pri_key.n));
 
-	
 	bn_read_string_to_bytes(plain, pri_key.bytes, PLAIN);
 	bn_read_string_to_bytes(cipher, pri_key.bytes, CIPHER_2048);
 	memcpy_r(plain, plain, 256);
 	memcpy_r(cipher,cipher, 256);
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Public_Func(tmp0, plain, &pub_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_Public_Func test:%2x\n",(0 == memcmp(tmp0, cipher, pri_key.bytes)));
-	
+
 	memset(tmp0, 0, pri_key.bytes);
 	RSA_Private_Func(tmp0,cipher,&pri_key, &RAND_RandP, NULL);
 	MyPrintf("\r\nRSA_Private_Func test:%2x\n",(0 == memcmp(tmp0, plain, pri_key.bytes)));
@@ -224,16 +222,16 @@
 {
     uint32_t i, j, slen;
     uint32_t d;
-	
+
     slen = strlen( s );
 
 	if ((len * 2) < slen)
 		return(-1);
 
 	memset(r, 0, len);
-	
+
 	len = len - 1;
-	
+
 	for( i = slen, j = 0; i > 0; i--, j++)
 	{
 		if( -1 == bn_get_digit( &d, s[i - 1] ) )
Index: SHA_ENHNCE_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SHA_ENHNCE_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SHA_ENHNCE_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: SHA_ENHNCE_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SHA_ENHNCE_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SHA_ENHNCE_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: SHA_ENHNCE_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SHA_ENHNCE_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SHA_ENHNCE_TEST/user/main.c	(working copy)
@@ -1,22 +1,22 @@
 /**
   ******************************************************************************
-  * @file    3121Demo_1.0V\ModuleDemo\CryptTest\SHA_ENHNCE_TEST\user\main.c
+  * @file    3121Demo\ModuleDemo\CryptTest\SHA_ENHNCE_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    21-Feb-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   SHA ENHNCE TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -49,14 +49,14 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 SHA test Demo V1.0.\r\n");
 
 	test_sha_Enhance();
 
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -74,7 +74,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -98,7 +98,7 @@
 	const char *cc1_256 = "346A578A87CFFC251AE7B0FE9ED08607C3537B691CFE7F521F6AD7D5AF015D90";
 	const char *cc1_384 = "FBEBF75AD47A69F30729A9C2620904AFBD1BBCC237645E0CCA474AAD36320ED008FC5D9E2A2208C5FDF37F967A0BAEE9";
 	const char *cc1_512 = "4E5B77FEF46B48EFD195BB5478B82CB70F203BF5600345B9B7C00567444C029E2E85143A321C7E88C558F564B2D856FB4CFB6979F2D37A27A5531E469809AC6A";
-	
+
 	const int inputlen = 1024 * 10;
 	uint32_t len = 0;
 	int i = 0;
@@ -127,7 +127,7 @@
 
 	for(i = 0; i < inputlen; i++)
 		c_512[inputlen - i - 1] = i;
-	
+
 	memset(c1_160, 0, sizeof(c1_160));
 	memset(c1_224, 0, sizeof(c1_224));
 	memset(c1_256, 0, sizeof(c1_256));
@@ -135,6 +135,7 @@
 	memset(c1_512, 0, sizeof(c1_512));
 
 	len = inputlen / 3;
+	//支持分段计算，但不可多次进行first后再进行后续计算，中间值无法保存输入，会造成结果出错
 
 	sha_first(SHATYPE_1, NULL, c_512, len);
 	sha_mid(SHATYPE_1, NULL, c_512 + len, len);
@@ -180,16 +181,16 @@
 {
     uint32_t i, j, slen;
     uint32_t d;
-	
+
     slen = strlen( s );
 
 	if ((len * 2) < slen)
 		return(-1);
 
 	memset(r, 0, len);
-	
+
 	len = len - 1;
-	
+
 	for( i = slen, j = 0; i > 0; i--, j++)
 	{
 		if( -1 == bn_get_digit( &d, s[i - 1] ) )
Index: SHA_TEST/prj/MDK/Objects/YC3121_Keil.axf
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: SHA_TEST/prj/MDK/Objects/YC3121_Keil.axf
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: SHA_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SHA_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SHA_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -236,7 +236,7 @@
       <GroupNumber>2</GroupNumber>
       <FileNumber>3</FileNumber>
       <FileType>1</FileType>
-      <tvExp>1</tvExp>
+      <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
       <bDave2>0</bDave2>
       <PathWithFileName>..\..\user\main.c</PathWithFileName>
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: SHA_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SHA_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SHA_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: SHA_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SHA_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SHA_TEST/user/main.c	(working copy)
@@ -1,22 +1,22 @@
 /**
   ******************************************************************************
-  * @file    3121Demo_1.0V\ModuleDemo\CryptTest\SHA_TEST\user\main.c
+  * @file    3121Demo\ModuleDemo\CryptTest\SHA_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    12-Dec-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   SHA TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -49,14 +49,14 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 SHA test Demo V1.0.\r\n");
-	
+
 	test_sha();
 
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -74,7 +74,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -99,10 +99,9 @@
 	const char *cc1_384 = "FBEBF75AD47A69F30729A9C2620904AFBD1BBCC237645E0CCA474AAD36320ED008FC5D9E2A2208C5FDF37F967A0BAEE9";
 	const char *cc1_512 = "4E5B77FEF46B48EFD195BB5478B82CB70F203BF5600345B9B7C00567444C029E2E85143A321C7E88C558F564B2D856FB4CFB6979F2D37A27A5531E469809AC6A";
 
-	
 	const int inputlen = 1024 * 10;
 	int i = 0;
-	
+
 	unsigned char c_512[inputlen +1] = {0};
 
 	unsigned char c1_160[160 /8] = {0};
@@ -118,16 +117,16 @@
 	unsigned char exp_c1_512[512 /8] = {0};
 
 	MyPrintf("\n*************SHA Test In*************\n");
-	
+
 	bn_read_string_to_bytes(exp_c1_160, sizeof(exp_c1_160), cc1_160);
 	bn_read_string_to_bytes(exp_c1_224, sizeof(exp_c1_224), cc1_224);
 	bn_read_string_to_bytes(exp_c1_256, sizeof(exp_c1_256), cc1_256);
 	bn_read_string_to_bytes(exp_c1_384, sizeof(exp_c1_384), cc1_384);
 	bn_read_string_to_bytes(exp_c1_512, sizeof(exp_c1_512), cc1_512);
-	
+
 	for(i = 0; i < inputlen; i++)
 		c_512[inputlen - i - 1] = i;
-	
+
 	memset(c1_160, 0, sizeof(c1_160));
 	memset(c1_224, 0, sizeof(c1_224));
 	memset(c1_256, 0, sizeof(c1_256));
@@ -167,16 +166,16 @@
 {
     uint32_t i, j, slen;
     uint32_t d;
-	
+
     slen = strlen( s );
 
 	if ((len * 2) < slen)
 		return(-1);
 
 	memset(r, 0, len);
-	
+
 	len = len - 1;
-	
+
 	for( i = slen, j = 0; i > 0; i--, j++)
 	{
 		if( -1 == bn_get_digit( &d, s[i - 1] ) )
Index: SM2_ENC&DEC_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SM2_ENC&DEC_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SM2_ENC&DEC_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -258,7 +258,7 @@
       <GroupNumber>2</GroupNumber>
       <FileNumber>3</FileNumber>
       <FileType>1</FileType>
-      <tvExp>1</tvExp>
+      <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
       <bDave2>0</bDave2>
       <PathWithFileName>..\..\user\main.c</PathWithFileName>
@@ -266,18 +266,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -288,7 +276,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -300,7 +288,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -312,7 +300,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -324,7 +312,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -344,7 +332,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -356,7 +344,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -376,7 +364,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: SM2_ENC&DEC_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SM2_ENC&DEC_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SM2_ENC&DEC_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: SM2_ENC&DEC_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SM2_ENC&DEC_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SM2_ENC&DEC_TEST/user/main.c	(working copy)
@@ -1,9 +1,9 @@
 /**
   ******************************************************************************
-  * @file    3121Demo_1.0V\ModuleDemo\CryptTest\SM2_ENC&DEC_TEST\user\main.c
+  * @file    3121Demo\ModuleDemo\CryptTest\SM2_ENC&DEC_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    9-May-2020
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   SM2 ENC&DEC TEST program.
   ******************************************************************************
   * @attention
@@ -127,24 +127,23 @@
 int main(void)
 {
 	SM2_PrivateKeyTypeDef Key;
-	
+
 	UART_Configuration();
 
 	MyPrintf("Yichip Yc3121 SM2 ENC&DEC test Demo V1.0.\r\n");
-	
+
 	bn_read_string_to_bytes(Key.d, 	 KEY_WORDS*4, ckeyd);
 	bn_read_string_to_bytes(Key.e.x, KEY_WORDS*4, cex);
 	bn_read_string_to_bytes(Key.e.y, KEY_WORDS*4, cey);
 	printv(Key.d, KEY_WORDS*4, "d:");
 	printv(Key.e.x, KEY_WORDS*4, "ex:");
 	printv(Key.e.y, KEY_WORDS*4, "ey:");
-//	sm2_enc_dec_test();
-	
+
 	MyPrintf("\n  SM2_Enc           \n");
 	SM2_ALU(Key, 256, test_cplain, sizeof(test_cplain), test_ccipher, &clen, SM2_ENC);
 	MyPrintf("\n  SM2_Dec           \n");
 	SM2_ALU(Key, 256, test_ccipher, clen, _test_cplain, &mlen, SM2_DEC);
-	
+
 	while (1)
 	{
 
@@ -239,53 +238,4 @@
 	}
 }
 
-void sm2_enc_dec_test(void)
-{
-	SM2_EllipseParaTypeDef para;
-	SM2_PrivateKeyTypeDef key;
-
-	uint32_t ret;
-	uint32_t i = 0;
-
-	MyPrintf("\n***************SM2 enc&dec Test In***************\n");
-
-	bn_read_string_to_bytes(para.p, KEY_WORDS*4, cp);
-	bn_read_string_to_bytes(para.a, KEY_WORDS*4, ca);
-	bn_read_string_to_bytes(para.b, KEY_WORDS*4, cb);
-	bn_read_string_to_bytes(para.n, KEY_WORDS*4, cn);
-	bn_read_string_to_bytes(para.g.x, KEY_WORDS*4, cGx);
-	bn_read_string_to_bytes(para.g.y, KEY_WORDS*4, cGy);
-	bn_read_string_to_bytes(key.d, 	 KEY_WORDS*4, ckeyd);
-	bn_read_string_to_bytes(key.e.x, KEY_WORDS*4, cex);
-	bn_read_string_to_bytes(key.e.y, KEY_WORDS*4, cey);
-
-	printv(para.p, KEY_WORDS*4, "p:");
-	printv(para.a, KEY_WORDS*4, "a:");
-	printv(para.b, KEY_WORDS*4, "b:");
-	printv(para.n, KEY_WORDS*4, "n:");
-	printv(para.g.x, KEY_WORDS*4, "gx:");
-	printv(para.g.y, KEY_WORDS*4, "gy:");
-	printv(key.d, KEY_WORDS*4, "d:");
-	printv(key.e.x, KEY_WORDS*4, "ex:");
-	printv(key.e.y, KEY_WORDS*4, "ey:");
-	printv(test_cplain,sizeof(test_cplain),"test_cplain:");
-
-	ret = SM2_Enc(test_ccipher, &clen, test_cplain, sizeof(test_cplain), &(key.e), &para, &RAND_RandP, NULL, ECC_P256);
-	if(ret != RET_SM2_ENC_SUCCESS)
-		MyPrintf("  SM2_Enc:  ERROR::%c%c%c%c\n",ret,ret>>8,ret>>16,ret>>24);
-	else
-		MyPrintf("  SM2_Enc:  SUCCESS	\n");
-	printv(test_ccipher, clen, "test_ccipher:");
-
-	MyPrintf("\n  SM2_Dec           \n");
-	ret =SM2_Dec(_test_cplain, &mlen, test_ccipher, clen, &key, &para, &RAND_RandP, NULL, ECC_P256);
-	if(ret != RET_SM2_DEC_SUCCESS)
-		MyPrintf("  SM2_Dec:  ERROR::%c%c%c%c\n",ret,ret>>8,ret>>16,ret>>24);
-	else
-		MyPrintf("	SM2_Dec: SUCCESS	\n");
-
-	printv(_test_cplain, mlen, "_test_cplain:");
-	MyPrintf("\n*****sm2_enc_dec_test end****");
-}
-
 /************************ (C) COPYRIGHT Yichip Microelectronics *****END OF FILE****/
Index: SM4_TEST/prj/MDK/Objects/YC3121_Keil.axf
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: SM4_TEST/prj/MDK/Objects/YC3121_Keil.axf
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: SM4_TEST/prj/MDK/YC3121_Keil.uvoptx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SM4_TEST/prj/MDK/YC3121_Keil.uvoptx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SM4_TEST/prj/MDK/YC3121_Keil.uvoptx	(working copy)
@@ -244,18 +244,6 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>4</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
-      <PathWithFileName>..\..\user\bt_code.c</PathWithFileName>
-      <FilenameWithoutPath>bt_code.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
   </Group>
 
   <Group>
@@ -266,7 +254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>5</FileNumber>
+      <FileNumber>4</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -278,7 +266,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>6</FileNumber>
+      <FileNumber>5</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -290,7 +278,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>6</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -302,7 +290,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>7</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -322,7 +310,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -334,7 +322,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
Index: SM4_TEST/prj/MDK/YC3121_Keil.uvprojx
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SM4_TEST/prj/MDK/YC3121_Keil.uvprojx	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SM4_TEST/prj/MDK/YC3121_Keil.uvprojx	(working copy)
@@ -401,11 +401,6 @@
               <FileType>1</FileType>
               <FilePath>..\..\user\main.c</FilePath>
             </File>
-            <File>
-              <FileName>bt_code.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\user\bt_code.c</FilePath>
-            </File>
           </Files>
         </Group>
         <Group>
Index: SM4_TEST/user/main.c
===================================================================
--- /YC3121_demo/ModuleDemo/CryptTest/SM4_TEST/user/main.c	(revision 659)
+++ /YC3121_demo/ModuleDemo/CryptTest/SM4_TEST/user/main.c	(working copy)
@@ -1,22 +1,22 @@
 /**
   ******************************************************************************
-  * @file    3121Demo_1.0V\ModuleDemo\CryptTest\SM4_TEST\user\main.c
+  * @file    3121Demo\ModuleDemo\CryptTest\SM4_TEST\user\main.c
   * @author  Yichip Application Team
-  * @version V1.0.0
-  * @date    11-Dec-2019
+  * @version V1.0.1
+  * @date    15-July-2020
   * @brief   SM4 TEST program.
   ******************************************************************************
   * @attention
   *
   * COPYRIGHT 2019 Yichip Microelectronics
   *
-  * The purpose of this demo is to provide guidance to customers engaged in 
-	* programming work to guide them smoothly to product development, 
-	* so as to save their time.
-	*
-	* Therefore, Yichip microelectronics shall not be responsible for any direct, 
-	* indirect or consequential damages caused by any content of this demo
-	* and/or contained in this code used by the customer in its products.
+  * The purpose of this demo is to provide guidance to customers engaged in
+  * programming work to guide them smoothly to product development,
+  * so as to save their time.
+  *
+  * Therefore, Yichip microelectronics shall not be responsible for any direct,
+  * indirect or consequential damages caused by any content of this demo
+  * and/or contained in this code used by the customer in its products.
   *
   ******************************************************************************
   */
@@ -48,14 +48,14 @@
 int main(void)
 {
 	UART_Configuration();
-	
+
 	MyPrintf("Yichip Yc3121 SM4 test Demo V1.0.\r\n");
-	
+
 	test_sm4();
-	
+
 	while (1)
 	{
-		
+
 	}
 }
 
@@ -73,7 +73,7 @@
 	GPIO_Config(GPIOA, GPIO_Pin_0, UART0_RXD);
 
 	/* USARTx configured as follow:
-  - BaudRate = 115200 baud  
+  - BaudRate = 115200 baud
   - Word Length = 8 Bits
   - Stop Bit = 1 Stop Bit
   - Parity = No Parity
@@ -102,12 +102,12 @@
 
 	uint8_t xPlain[2][32] = {0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10};
 	uint8_t xCrypt[32];
-		
+
 	MyPrintf("\n*************SM4 Test In*************\n");
-		
+
 	memset(mCrypt, 0, sizeof(mCrypt));
 	memset(mPlain, 0, sizeof(mPlain));
-	
+
 	SM4_Enc(ECB, mCrypt, sizeof(mCrypt), Plain, sizeof(Plain), Key, Iv, &RAND_RandP, NULL);
 	t = (!memcmp(mCrypt, Crypt, sizeof(Crypt)));
 	MyPrintf("SM4 ECB Encrypt Test:%2x\n", t);
@@ -115,20 +115,20 @@
 	SM4_Dec(ECB, mPlain, sizeof(mPlain), Crypt, sizeof(Crypt), Key, Iv, &RAND_RandP, NULL);
 	t = (!memcmp(mPlain, Plain, sizeof(Plain)));
 	MyPrintf("SM4 ECB Decrypt Test:%2x\n", t);
-	
+
 	//CBC
 	memset(mCrypt, 0, sizeof(mCrypt));
 	memset(mPlain, 0, sizeof(mPlain));
-			
+
 	SM4_Enc(CBC, mCrypt, sizeof(mCrypt), Plain, sizeof(Plain), Key, Iv, &RAND_RandP, NULL);
 	SM4_Dec(CBC, mPlain, sizeof(mPlain), mCrypt, sizeof(mCrypt), Key, Iv, &RAND_RandP, NULL);
-	
+
 	t = (!memcmp(mPlain, Plain, sizeof(Plain)));
 	MyPrintf("SM4 CBC Test:        %2x\n", t);
-	
+
 	//xCBC
 	memset(xCrypt, 0, sizeof(xCrypt));
-	
+
 	SM4_Enc(CBC, xCrypt, sizeof(xCrypt), xPlain[0], sizeof(xPlain[0]), Key, Iv, &RAND_RandP, NULL);
 	SM4_Dec(CBC, xPlain[1], sizeof(xPlain[1]), xCrypt, sizeof(xCrypt), Key, Iv, &RAND_RandP, NULL);
 	t = (!memcmp(xPlain[1], xPlain[0], sizeof(xPlain[1])));
