Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apply Strong-Name Signing to winrt.runtime.dll #338

Closed
Scottj1s opened this issue Jun 29, 2020 · 2 comments
Closed

Apply Strong-Name Signing to winrt.runtime.dll #338

Scottj1s opened this issue Jun 29, 2020 · 2 comments
Assignees
Labels
enhancement New feature or request pri-0 Blocking/issue has no workaround
Milestone

Comments

@Scottj1s
Copy link
Member

Scottj1s commented Jun 29, 2020

Based on .Net Core best practice, winrt.runtime.dll should be strong-name signed.

Modern frameworks can automatically apply binding redirects, so the burden of managing strict bindings is no longer an issue. And since strong-name signing is viral, winrt.runtime.dll must be strong-name signed to permit referencing from another strong-name signed assembly.

Points for consideration:

  • Does it matter that there are two versions of winrt.runtime.dll (netstandard2 and net5)? Each would have a distinct hash. It's possible both could be loaded in a single process, in which case unique strong-name signatures would be required.
  • Should winrt.runtime.dll be publicly signed, as .Net Core assemblies are? Or does true strong-name signing offer greater benefits, with only the requirement of distributing the private key?
@manodasanW manodasanW added the enhancement New feature or request label Jun 30, 2020
@joperezr
Copy link
Member

I maintain the https://github.com/dotnet/iot repo and currently trying to fix dotnet/iot#1091 which involves updating the way we call WinRT code to use CsWinRT instead. I'm currently blocked in doing so because of this issue as I am getting:

CSC : error CS8002: Referenced assembly 'Microsoft.Windows.SDK.NET, Version=10.0.18362.3, Culture=neutral, PublicKeyToken=null' does not have a strong name.

Without this repo producing strong-name signed assemblies, we are currently blocked with onboarding this. cc: @jkoritzinsky

@Scottj1s
Copy link
Member Author

PR #420

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pri-0 Blocking/issue has no workaround
Projects
None yet
Development

No branches or pull requests

4 participants