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

Port S.Ref.StrongNameKeyPair #18349

Closed
ghost opened this issue Aug 29, 2016 · 10 comments
Closed

Port S.Ref.StrongNameKeyPair #18349

ghost opened this issue Aug 29, 2016 · 10 comments

Comments

@ghost
Copy link

ghost commented Aug 29, 2016

This type is used by MSBuild and disabled for xplat. Now that Microsoft.Build.Framework is available as an official NuGet package, some libs depending on MSBuild are being ported to .NET Core; lack of this type is a show-stopper in some cases. :(

cc @weshaggard, @atsushikan, dotnet/coreclr#6614 (comment)

@weshaggard
Copy link
Member

@bartonjs any thoughts one whether or not we have enough Crypto to support this x-plat?

@ghost
Copy link

ghost commented Aug 29, 2016

@dsplaisted, I ported https://github.com/dsplaisted/strongnamer to netstandarad1.3. This is the only blocker. Basically this is the patch so far: https://gist.github.com/jasonwilliams200OK/181721c2fcd6dcf995440f2dfde1f0de -- Mono.Cecil (released just now -> jbevain/cecil#213 (comment)) and Microsoft.Build.* are now published to NuGet.org with netstandard support

@ghost
Copy link

ghost commented Aug 29, 2016

Can we get some clarity on whether the ask is just for StrongNameKeyPair (hopefully can be implemented as standlone), or also a request for AssemblyName.get_KeyPair as well? (which would mean jamming StrongNameKeyPair and whatever associated crypto comes with it) into the S.Private area?

It sounds like the former to me, but it would be good to get clarity.

@ghost
Copy link

ghost commented Aug 29, 2016

@atsushikan, for StrongNamer project, KeyPair getter is not required (might be blocking someone else but that can probably be worked out later once the related Cryptography APIs are available xplat).

@bartonjs
Copy link
Member

@weshaggard Ignoring the potential question of layering (which Ati covered) think it's "named keys are very much tied to CAPI, and can't work x-plat; and the keypair blob form is probably transparently the CAPI form, so they'd need to reuse the CAPI <--> RSAParameters conversion logic; and otherwise it's fine".

@ghost
Copy link

ghost commented Aug 30, 2016

Is it a correct assessment that the dependency Microsoft.Runtime.Hosting is something non-portable in this implementation: https://github.com/dotnet/coreclr/blob/dbe6910/src/mscorlib/src/System/Reflection/StrongNameKeyPair.cs? I saw the usage of System.Runtime.Hosting elsewhere in the code, is Microsoft.R.H variant somewhat different (and not available in open)?

@bartonjs bartonjs removed their assignment Sep 30, 2016
@danmoseley
Copy link
Member

This is covered by https://github.com/dotnet/corefx/issues/11808. @kouvel please close if you agree.

@kouvel
Copy link
Member

kouvel commented Oct 5, 2016

Yes this should be covered by dotnet/corefx#11808, closing

@kouvel kouvel closed this as completed Oct 5, 2016
@weshaggard
Copy link
Member

@kouvel we should make sure that what we do in dotnet/corefx#11808 actually provides a working version of StrongNameKeyPair because currently I don't think it is functional.

@alexdrl
Copy link

alexdrl commented Sep 26, 2018

Any input on implementing S.R.StrongNameKeyPair? We are also trying to build StrongNamer in a .NET Standard MSBuild Task, but got into a PlatformNotSupported exception in this class in Linux.

I think that this class could possibly be implemented, as assemblies can be strong named when built on Linux.

@msftgits msftgits transferred this issue from dotnet/corefx Jan 31, 2020
@msftgits msftgits added this to the 2.0.0 milestone Jan 31, 2020
@ghost ghost locked as resolved and limited conversation to collaborators Dec 29, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

7 participants