/** * @author - Johnny Shaieb * User Arguments: * argv[0] - Transaction Check, usually 310 for Java, RSA, Balance * or 311 for Java, RSA, Transfer. * argv[1] - Destination CID. * argv[2] - Item. Example would be 5 for money or 3 for ore. 1=saw 2=shovels 3=ore 4=wood 5=money * argv[3] - Value. 8 digit string representing value to be transfered, * or all zeros for balance. */ import java.math.BigInteger; import java.util.*; public class shilpa_rsa { public static void main(String argv[]) { /* * Retrieve the values inputed by the user. * User can put values by the following syntax when executing .class file. * java RSAExample 311 1429214707 5 00000000 */ int iTransactionCheck = Integer.parseInt(argv[0]); String sDestinationCID = argv[1]; String sItem = argv[2]; String sValue = argv[3]; String sSourceCID = "3483181806"; String sReceiptType = "3"; String sEscrowType = "0"; String sLevel = "1"; /* Build the Transaction Message */ String sTransxMessage = sSourceCID + sDestinationCID + sReceiptType + sEscrowType + sLevel + sItem + sValue; /* * E stands for Public Key * D stands for Private Key * N stands for mod Value */ BigInteger biBankKey_E = new BigInteger("161113532007265779449845817508741092074398558249097177731844480326608228361549217481145150308681639771529423593722456145492549351410135940067466312286158773065813857675466722977791757622027415885866688223456453179212301141423682112805106591227107942380163831488800329867016972951386256992231814346777207865763"); BigInteger biBankKey_N = new BigInteger("24617535273242758736004224551469305993321194197746650055261616016245940885328886102538158533468440234419533271856655814845565357494702866809489848890429610527027676590043133973785034061355894789391626877870795450330812730422005260901481525006007005945048944739259005536472672993671341540952576379721823906810489528951827851766587937401961964644923385069931177057618198441242879185994624648747243344354260493443635032035631098338133214258304480264872475368906117797286984225429371567695394662904451627244225661649329259614635716987296000072738244260575912359981168550512718632897428975835294660766367187928643992187127"); BigInteger biCompanyKey_E = new BigInteger("106050053484702141493987597179940961323132415460023560846173340316645540055351556802748560379217704346111726070029123269895943757267016352515696331628156884298882019508674245348320202087668041469231036685973169897586639146771912026656966110269819812247839566277995090049038445544836673717394342049936365009509"); BigInteger biCompanyKey_D = new BigInteger("4162075610981413512114540929709527844355071718136877086166578903479637902315237782454942681915156508013216353814822408872044172401843081184751821088226075836935077712835033971320751729950907988133193049655731296120857110972121451589842352119018638709189632340518274061519063146349485169464238134729556780108960499060522452785028013339587622527505600233620377189157187030745905086946614087809368524051781842678599032749737725705357881960303740196928847775461505836743137123370224057429373719469109053777654885915965074951533556868214576757504437989584080733694834601813909130796976915840288219340029889558034871402949"); BigInteger biCompanyKey_N = new BigInteger("15264264633362489261547380527259057240452505703955575693503796457746879568469472876715867871662907751630304008693746120077938437803463278629285709605610948080317639079505554474217049610755981701103103937153114447586124818926669868165216015692177445154337314805214315332172683133002034581253616385406859458765680671066198878710118530525066455168517501244252020187250254021668454907588696618878581100812797091801236986074440037707773164446207150924351004713390291541208306174897034411780483714760596057863364552327767236005888954132729842081806624704455717478216815879139368011174035363906804473946651737549485161097607"); BigInteger biTransx = new BigInteger(sTransxMessage); BigInteger biCMessage = biTransx.modPow(biCompanyKey_D, biCompanyKey_N); BigInteger biPMessage = biCMessage.modPow(biBankKey_E, biBankKey_N); System.out.println(new ETSProxy().EcommerceTransaction(biPMessage, sSourceCID, iTransactionCheck)); } }