1library TF_DLL; 2 3{$ifndef DLL} 4 error('compile with $define DLL'); 5 end. 6{$endif} 7 8 9(************************************************************************* 10 11 DESCRIPTION : DLL for Twofish 12 13 REQUIREMENTS : D2-D7/D9-D10/D12, compile with $define DLL 14 15 EXTERNAL DATA : --- 16 17 MEMORY USAGE : --- 18 19 DISPLAY MODE : --- 20 21 Version Date Author Modification 22 ------- -------- ------- ------------------------------------------ 23 0.10 30.05.06 W.Ehrhardt Initial version analog BF_DLL 24 0.11 04.06.06 we Incl version info, updated TF_DLL_Version 25 0.12 16.06.07 we TF_OMAC, TF_EAX; exports TF_Reset 26 0.13 16.07.09 we TF_DLL_Version returns PAnsiChar 27 0.14 31.07.10 we TF_CTR_Seek, longint ILen, TF_OMAC_UpdateXL removed 28 0.15 01.08.10 we Removed TF_CTR_Seek (handled in interface unit) 29**************************************************************************) 30 31(*------------------------------------------------------------------------- 32 (C) Copyright 2006-2010 Wolfgang Ehrhardt 33 34 This software is provided 'as-is', without any express or implied warranty. 35 In no event will the authors be held liable for any damages arising from 36 the use of this software. 37 38 Permission is granted to anyone to use this software for any purpose, 39 including commercial applications, and to alter it and redistribute it 40 freely, subject to the following restrictions: 41 42 1. The origin of this software must not be misrepresented; you must not 43 claim that you wrote the original software. If you use this software in 44 a product, an acknowledgment in the product documentation would be 45 appreciated but is not required. 46 47 2. Altered source versions must be plainly marked as such, and must not be 48 misrepresented as being the original software. 49 50 3. This notice may not be removed or altered from any source distribution. 51----------------------------------------------------------------------------*) 52 53uses 54 tf_base, tf_ctr, tf_cfb, tf_ofb, tf_cbc, tf_ecb, tf_omac, tf_eax; 55 56{$R *.RES} 57 58 59{---------------------------------------------------------------------------} 60function TF_DLL_Version: PAnsiChar; stdcall; 61 {-Return DLL version as PAnsiChar} 62begin 63 Result := '0.15'; 64end; 65 66 67exports TF_DLL_Version name 'TF_DLL_Version'; 68exports TF_XorBlock name 'TF_XorBlock'; 69exports TF_Init name 'TF_Init'; 70exports TF_Encrypt name 'TF_Encrypt'; 71exports TF_Decrypt name 'TF_Decrypt'; 72exports TF_Reset name 'TF_Reset'; 73exports TF_SetFastInit name 'TF_SetFastInit'; 74exports TF_GetFastInit name 'TF_GetFastInit'; 75 76exports TF_ECB_Init name 'TF_ECB_Init'; 77exports TF_ECB_Reset name 'TF_ECB_Reset'; 78exports TF_ECB_Encrypt name 'TF_ECB_Encrypt'; 79exports TF_ECB_Decrypt name 'TF_ECB_Decrypt'; 80 81exports TF_CBC_Init name 'TF_CBC_Init'; 82exports TF_CBC_Reset name 'TF_CBC_Reset'; 83exports TF_CBC_Encrypt name 'TF_CBC_Encrypt'; 84exports TF_CBC_Decrypt name 'TF_CBC_Decrypt'; 85 86exports TF_CFB_Init name 'TF_CFB_Init'; 87exports TF_CFB_Reset name 'TF_CFB_Reset'; 88exports TF_CFB_Encrypt name 'TF_CFB_Encrypt'; 89exports TF_CFB_Decrypt name 'TF_CFB_Decrypt'; 90 91exports TF_OFB_Init name 'TF_OFB_Init'; 92exports TF_OFB_Reset name 'TF_OFB_Reset'; 93exports TF_OFB_Encrypt name 'TF_OFB_Encrypt'; 94exports TF_OFB_Decrypt name 'TF_OFB_Decrypt'; 95 96exports TF_CTR_Init name 'TF_CTR_Init'; 97exports TF_CTR_Reset name 'TF_CTR_Reset'; 98exports TF_CTR_Encrypt name 'TF_CTR_Encrypt'; 99exports TF_CTR_Decrypt name 'TF_CTR_Decrypt'; 100exports TF_SetIncProc name 'TF_SetIncProc'; 101exports TF_IncMSBFull name 'TF_IncMSBFull'; 102exports TF_IncLSBFull name 'TF_IncLSBFull'; 103exports TF_IncMSBPart name 'TF_IncMSBPart'; 104exports TF_IncLSBPart name 'TF_IncLSBPart'; 105 106 107exports TF_OMAC_Init name 'TF_OMAC_Init'; 108exports TF_OMAC_Update name 'TF_OMAC_Update'; 109exports TF_OMAC_Final name 'TF_OMAC_Final'; 110exports TF_OMAC1_Final name 'TF_OMAC1_Final'; 111exports TF_OMAC2_Final name 'TF_OMAC2_Final'; 112 113exports TF_EAX_Init name 'TF_EAX_Init'; 114exports TF_EAX_Provide_Header name 'TF_EAX_Provide_Header'; 115exports TF_EAX_Encrypt name 'TF_EAX_Encrypt'; 116exports TF_EAX_Decrypt name 'TF_EAX_Decrypt'; 117exports TF_EAX_Final name 'TF_EAX_Final'; 118 119 120end. 121 122