lucidiot
/
NullSharp
Archived
1
0
Fork 0
A C# client to /dev/null As A Service.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
Erwan Rouchet bc13f4fb1b
Bump xunit.runner.visualstudio
3 years ago
NullSharp Prepare for NuGet 4 years ago
NullSharpTests Bump xunit.runner.visualstudio 3 years ago
.gitignore Initial commit 4 years ago
.gitlab-ci.yml Downgrade tests to .NET Core 2.1 4 years ago
LICENSE Initial commit 4 years ago
NullSharp.sln Add unit tests 4 years ago
README.md Add README 4 years ago

README.md

NullSharp

NullSharp is a C# API client for /dev/null As A Service that lets you delete data securely in the cloud.

Usage

The service has been implemented in this client as a write-only Stream:

using System;
using System.IO;
using NullSharp;

namespace MyProject
{
    class Program
    {
        static void Main(string[] args)
        {
            string password = "hunter2";
            var stream = new NullStream();
            using (var sw = new StreamWriter(stream)) {
                sw.WriteLine(password);
            }
            // Get rid of the local copy
            password = null;
            // ...immediately
            GC.Collect();
            GC.WaitForPendingFinalizers();
        }
    }
}

Offline usage

You may use the standard System.IO.Stream.Null, a special Stream that should write to nowhere; however, secure immediate deletion and end-to-end encryption are not guaranteed. You should only use this method when no other options are available and disclose the potential breach risks to your Data Protection Officer as it may not be GDPR-compliant.

Disclaimer

Do not use this in any actual application code, unless you are crazy, want to prank someone, or heavily confuse whoever will maintain your code in ten years.