Eric Pouech eric.pouech at
Fri Aug 17 10:34:38 CDT 2001

from a pure technical point of view, the crypto API is in a pure WOSA style :
- a set of high level API (in advapi)
- an extendable set of low level service providers (here for example the crypto algos - RSA....)
- the high level maps the fonctional request of the user onto on of the available SP.

so, my advice here would be to implement this type of scheme. This would allow to:
- use native DLLs if they exist (and go beyond what's supported by Linux)
- still allow to use Linux lib (just build a wrapper DLL to that lib) and you should be all set

from a copyright point of view:
- Wine use a X11 like licence, so make sure all the external libs you use are not GPL (LGPL is fine). If they are GPL, you won't be able to ship the result with Wine.
- Use of native DLL is granted as long as you have a Windows licence on the target machine (native DLLs shall not be shipped with Wine, Wine should be configured to use the local resources)

from an exportation point of view:
- some countries (US as an example) puts lots of contraints on the type of crypto algo to be used outside of the US. So those shouldn't be shipped with Wine's, but be provided as an external resource)

> Hi,
> I was going to start implementing the Cypto API (in advapi32.dll) over the 
> next few weeks.  As of yet these functions are no more than stubs.  However, 
> I am finding increased use of this API as more applications becomed 
> networkable and relying more heavily on internet connections.
> I was hoping to implement these functions by using the OpenSSL library 
> (if/when available).  This library seems to have similar capabilities.
> One of my concerns is about legal issues.  What special concerns should I 
> note about cryptographic software?  Are there any special copyright issues I 
> should be aware of?
> Another question is about design.  M$ seems to split the cryptographic 
> software into different dlls (rsabase.dll, rsasig.dll, dssbase.dll, etc.). 
> Should I do this as well so that, applications can use the native dlls if 
> necessary or should I simply implement it entirely though advapi32.dll which 
> and avoid the need to create several new (and very small) dlls under wine?  
> Because most of the code is already in another library (OpenSSL) creating 
> extra dlls seems abit unnecessary.
>  - Travis
> _________________________________________________________
> Do You Yahoo!?
> Get your free address at

Eric Pouech 
The future will be better tomorrow, 
Vice President Dan Quayle

Faites un vœu et puis Voila ! 
Pendant tout l'été, gagnez une Ford Ka sur Voila Gratter !

More information about the wine-devel mailing list