How to convert a plain string into a secure string with C#

A SecureString is a confidential piece of information that is erased from memory when not in use anymore. You can use this object if you need to pass around things like passwords and PIN codes that should be protected while in use.

Here’s an extension method of how to construct a SecureString from a plain string:

public static SecureString ToSecureString(this string plainString)
{
	if (plainString == null)
		return null;

	SecureString secureString = new SecureString();
	foreach (char c in plainString.ToCharArray())
	{
		secureString.AppendChar(c);
	}
	return secureString;
}

You can call this directly on strings:

string password = "password";
SecureString secure = password.ToSecureString();

View all various C# language feature related posts here.

Unknown's avatarAbout Andras Nemes
I'm a .NET/Java developer living and working in Stockholm, Sweden.

2 Responses to How to convert a plain string into a secure string with C#

  1. Vikram Chaudhary's avatar Vikram says:

    Thank you for article

  2. Manoj R Maheshwari's avatar Manoj R Maheshwari says:

    How to get it back?

Leave a reply to Manoj R Maheshwari Cancel reply

Elliot Balynn's Blog

A directory of wonderful thoughts

Software Engineering

Web development

Disparate Opinions

Various tidbits

chsakell's Blog

WEB APPLICATION DEVELOPMENT TUTORIALS WITH OPEN-SOURCE PROJECTS

Once Upon a Camayoc

ARCHIVED: Bite-size insight on Cyber Security for the not too technical.