In shared system, the names of the assembly should be unique because the assemblies can be accessed by multiple applications. Therefore you need to assign a strong name to assemblies before adding it to GAC.
A strong name contains information about the assembly, such as its name, version number, and the public key of a public/private key pair. It may or may not contain information about culture.
To sign an assembly with a strong name, you must have a public/ private key pair. If you do not have a key pair, generate it with the strong naming utility, sn.exe.