Hvorfor skal ens assemblies strong names? Ifølge Microsoft er det anbefalet praksis, da det giver nogle fordele. Kigger man på Microsofts egne assemblies fx. Enterprise Library, kan man se, at disse har versions numre, 'culture information', et 'friendly name' og en PublicKeyToken. Et 'strong name assembly' får påtrykt en unik værdi i form af en tilfældig hashværdi, der bliver genereret udfra assembly manifest filen. Ved at 'strong name' assemblies garanterer man ens assembly er unik, og ikke kan bygges eller efterlignes af tredje part. Dette er forudsat af, de ikke har adgang til nøglefilen og kender password. Med et strong name garanteres, at assemblien er bygget og forvaltet hos den udgivende instans. Desuden garanterer versionerings delen at man undgår dll hell, hvor en opdateret assembly i værste tilfælde kan nedlægge andre applikationer. Man kan med versionering sørge for at assemblies kan co-eksistere side om side med forskellige versions numre. Konsumerings applikationerne kan herefter referere til den nyeste assembly, når de er klar til det.

Man giver ens assembly et strong name ved at oprette en nøglefil. Project -> Properties -> Signing. Her kan man oprette en ny nøgle og sågar password beskytte det.

Det er anbefalet praksis, at man som udgiver af software i et firma gør brug af samme nøgle fil, da man herved undgår et unødigt administrations helvede med forskellige nøglefiler.

! Bemærk, man kan kun referere til andre strong named assemblies fra ens assembly. Assemblies, der skal registreres i Global Assembly Cache (GAC) skal altid strong names, inden de får lov at blive registreret.