Lack of encryption between banks and regional processors present serious risks to the system as transmissions may be intercepted and modified or even deleted. Attackers may subsequently divert, redirect, or cancel funds transfers. One of the countermeasures is to use public key cryptography to ensure proper authentication and privacy stealing vulnerability and other required compensating controls to secure cryptographic keys. The RSA cipher is a revolutionary invention in the cryptography field. It enables ciphering without leaking private key information. It deploys the public key scheme to modify the key escrow mechanism to be used in SWIFT system offering the following features for the above stated problems:

. Each bank owns its private key and public key, but different keys are used for authentication of different transactions, and these keys are unknown to SWIFT as before.

. Provide bank-to-center authentication.

. Provide link-by-link encryption from end-to-end.

Each bank has a securely stored private key and a public key. A SWIFT terminal generates a random number for every message transmitted as the end-to-end authentication session key, and encrypts this key with the receiver's public key. Using the same procedure to perform bank-to-center input sequence number authentication, it enables an operating center to verify the authenticity of the input sequence number from customer banks. The receiving bank to verify the output sequence number from the operating center uses the same method. Let us name this as link-by-link authentication. Finally, link-by-link encryption can be performed using a uniquely generated session key for message encryption and encrypting the session key with the public key of the code at the other side of the link.