コードアクセス保護

マイクロソフトのドットネットフレームワークにOSレベルのユーザー権利以上にコードアクセス権利がドットネットランタイムに管理されています。  Just as user IDs are granted access to files, queues, the registry, DNS, etc, so also can assemblies be granted access. Thus, even if a user running a program has access to a resource, the program itself may be prevented from accessing it by Code Access Security (CAS).
At runtime, permissions are granted to an assembly as follows:
1. the CLR looks at the assembly's evidence (e.g. its certificate or where it is running).
2. The CLR assigns the assembly to a code group based on the evidence found.
3. Permission set is assigned to this assembly in accord with the code group.

I was curious about what permissions assemblies I write myself and run locally are given, so I printed both the evidence and the permission set to the console at runtime. The evidence consisted of: the zone (my computer), the filename, and the hash of the file (long). The permission set was empty, but the "IsUnrestricted" bit was set, meaning all built-in permissions were granted.
I noticed that one subgroup in the "My Computer" zone consists of "Strong Name" assemblies. A strong name is a cryptographically strong name, which seems to indicate a digital signature or encryption. I do not believe that assemblies created simply with csc contain strong names, so I wish to investigate the difference.