FAQ - Is the Aerospike C# Client Strongly Named?


#1

##FAQ - Is the Aerospike C# client Strongly Named?

###Detail

Strongly Named assembly is one that has been generated using a private key that matches the public key which is distributed along with the assembly. Within the assembly there will be a manifest listing out the files within and their hashes. A Strongly Named Assembly has a unique name, it therefore follows that two Strongly Named Assemblies with the same name contain the same files.

It can be considered advantageous to use a Strongly Named Assembly (SNA) for the following reasons:

  • An SNA can be included in th Global Assembly Cache and so it can be shared among multiple applications
  • Strong Naming guarantees the lineage of an assembly so the application that is being loaded came from the same publisher that created the version the application was built with.
  • SNAs contain a digital signature and will not load if they have been tampered with. They are therefore guaranteed to behave in a safe and reliable manner.

###Answer

The compiled Aerospike C# client is Strongly Named from version 3.2.0 onwards. The client can be obtained from here:

http://www.aerospike.com/download/client/csharp

It should be noted that only the compiled AerospikeClient library on nuget is Strongly named. The uncompiled code (available on Github here https://github.com/aerospike/aerospike-client-csharp) cannot be Strongly Named as this would require including a private key in the repository.