Matrix互換API 一覧

Matrix API Matrix ドングルは USBタイプと LPTタイプの2種類を 1つの API で操作できます。互換 APIでは LPT関連の機能はエラーを返すか、何もしません. また、ネットワーク API も動作を伴ないません.

MatrixドングルとELドングルを併用できるように、APIの名前衝突を避けるため _EL が名前の末尾に追加されています( Dongle_ReadSerNr -> Dongle_ReadSerNr_EL ) <

互換 API

short Init_MatrixAPI(void)
short Release_MatrixAPI(void)
short Dongle_Find(void)
long Dongle_Version(short, short)
long Dongle_Model(short, short)
short Dongle_MemSize(short, short)
short Dongle_Count(short)
long Dongle_ReadSerNr(long, short, short)
short Dongle_WriteData(long, long*, short, short, short)
short Dongle_WriteDataEx(long, long*, short, short, short, short)
short Dongle_ReadData(long, long*, short, short, short)
short Dongle_ReadDataEx(long, long*, short, short, short, short)
short Dongle_WriteKey(long UserCode,long *KeyData, short DongleNr, short PortNr);
short Dongle_GetKeyFlag(long UserCode, short DongleNr, short PortNr)
short Dongle_EncryptData(long UserCode, long *DataBlock, short DongleNr, short PortNr)
short Dongle_DecryptData(long UserCode, long *DataBlock, short DongleNr, short PortNr)
short Dongle_SetDriverFlag(long UserCode, short DriverFlag, short DongleNr, short PortNr)
short Dongle_GetDriverFlag(long UserCode, short DongleNr, short PortNr)

動作を伴わない API

void SetW95Access(short)
short GetPortAdr(short)
short Dongle_FindEx(DNGINFO *)
short PausePrinterActivity(void)
short ResumePrinterActivity(void)
long GetVersionAPI(void)
long GetVersionDRV(void)
long GetVersionDRV_USB(void)
short SetConfig_MatrixNet(short, char*)
short LogIn_MatrixNet(long, short, short)
short LogOut_MatrixNet(long, short, short)
long GetConfig_MatrixNet(short Category)

拡張 API

ELハードウェアの機能(LED/暗号機能/タイマー)や互換APIが拡張した機能( 2つのメモリ領域, 書込ロック)を操作するための API

short Dongle_SetLED( short mode, 
	 	        short dNr, 
			short PortNr )
LED点灯、点滅、消灯
short Dongle_GetRand( long UserCode, 
			 short siz, 
			 unsigned char* pRand, 
			 short dNr,
			 short PortNr )
ELハードウェアによる乱数生成
short Dongle_GetTime( long UserCode, 
	 		 char* pTimeBuffer, 
			 short dNr, 
			 short PortNr )
内臓リアルタイムクロックの時間取得
short Dongle_CreateRSAKeyPair( long UserCode, 
				  short idx, 
				  short dNr, 
				  short PortNr )
EL 内部の指定場所(idx)にキーペアを生成. 3つのキーペアをEL内部に保存可能
short Dongle_LockRSAKeyPair( long UserCode, 
	 		        short idx, 
				BOOL bLock, 
				unsigned long lockKey, 
				short dNr, 
				short PortNr )
EL 内部のキーペアの書込ロック
short Dongle_GetRSAPubKey( long UserCode, 
			      short idx, 
			      unsigned char* modulus, 
			      short* modulus_len, 
			      unsigned char* exponent, 
			      short* exponent_len, 
			     short dNr, 
			     short PortNr )
EL 内部の指定場所の公開鍵取得
short Dongle_EncryptDataRSA( long UserCode, 
				short idx, 
				unsigned char* plainText, 
				short plainTextLen, 
				unsigned char* cipher, 
				short* cipherLen,	 
				short dNr, 
				short PortNr )
EL内部の指定公開鍵で暗号化(APIが公開鍵を取得して処理)
short Dongle_DecryptDataRSA( long UserCode, 
				short idx, 
				unsigned char* cipher, 
				short cipherLen, 
				unsigned char* plainText, 
				short* plainTextLen,
				short dNr, 
				short PortNr )
EL内部の指定秘密鍵で復号化(処理はEL内部で実行)
short Dongle_DecryptDataTDES( long UserCode, 
				 unsigned char* iv, 
				 char*cipher, 
				 short cipherLen, 
				 char*plain, 
				 short* plainLen, 
				 short dNr, 
				 short PortNr )
トリプルDES復号化
short Dongle_EncryptDataTDES( long UserCode, 
				 unsigned char* iv, 
				 char*plainText, 
				 short plainLen, 
				 char*cipher, 
				 short* cipherLen,
				 short dNr, 
				 short PortNr )
トリプルDES暗号化
short Dongle_WriteKeyTDES( long UserCode, 
			      unsigned char* key, 
			      short dNr, 
			      short PortNr )
トリプルDESの暗号鍵の設定
short Dongle_WriteKeyHMACSHA1( long UserCode, 
				  unsigned char* key, 
				  short dNr, 
				  short PortNr )
HMAC(SHA1)のパスワード設定
short Dongle_HMACSHA1( long UserCode, 
			  char*plainText, 
			  short plainLen, 
			  char*hash, 
			  short* hashLen,
			  short dNr, 
			  short PortNr )
HMAC(SHA1)ハッシュ値の取得
short Dongle_MemSize2(short dNr, 
			 short PortNr)
第2メモリ領域のサイズ取得
short Dongle_WriteData2( long UserCode, 
			    unsigned char* data, 
			    unsigned short pos, 
			    unsigned short len, 
			    short dNr, 
			    short PortNr)
第2メモリ領域への書込
short Dongle_ReadData2( long UserCode, 
			   unsigned char* data, 
			   unsigned short pos, 
			   unsigned short len, 
			   short dNr, 
			   short PortNr)
第2メモリ領域からの読込
short Dongle_LockData( long UserCode, 
			 BOOL bLock, 
			 unsigned long lockKey, 
			 short dNr, 
			 short PortNr)
メモリ領域への書込みロック
short Dongle_LockData2( long UserCode, 
			   BOOL bLock, 
			   unsigned long lockKey, 
			   short dNr, 
			   short PortNr)
第2メモリ領域への書込みロック
short Dongle_ReadGUSN( long UserCode, 
			  unsigned char* gSN, 
			  short dNr, 
			  short PortNr)
ELの固有 ID 取得( Globally Unique Serial Number )
short Dongle_SetTimer( long UserCode, 
			  short mode, 
			  short dNr, 
			  short PortNr)
タイマーの動作モード設定
short Dongle_StartTimer(long UserCode, 
			   short dNr, 
			   short PortNr )
タイマー開始
short Dongle_StopTimer( long UserCode, 
			   short dNr, 
			   short PortNr)
タイマー停止
short Dongle_GetTimer( long UserCode, 
			  unsigned long* dwCount,  
			  short dNr, 
			  short PortNr)
タイマーカウント取得