Searching for usable implementation of CSP on top of pkcs 11 - pkcs#11

I found a few dead projects on this title.
Some referenced here.
I need one. But why are they all dead?
Is it bad idea to use such design? do you know of any good implementation which does this?

Some Smart Card vendors were providing CSP over PKCS#11 (not open source). In my opitnion, htis is not the best way of developping a CSP. These 2 standards are very different, and even more different since the venue of CNG and Credential Providers under 'recent' Windows OS.

Related

About API and Plugins

It is a general question.
I am not sure whether i could post this question here. As i search in the programmer section and it seems to me that it is meant for in-depth question on programming.
As i am not a programmer ,however, i would like to find out how is API related to a plugin.. Do they have and difference?
I have tried to google in the web but not able to find any answer to my own question.
Thanks in advance.
Justin
"An application programming interface (API) is a set of routines, protocols, and tools for building software and applications" (Wikipedia).
What this means is that you establish a connection to another program / service which provides you certain functionality, like data retrieving in case of the Twitter API or operations and commands like from the Win32 API. Without this interface, there would be no ("easy") way to make use of the program.
"A plug-in [...] is a software component that adds a specific feature to an existing computer program" (again, Wikipedia).
This means that you have already built an application but want to enhance its functionality / appearance. For instance, you have a table on an HTML page but want to make it searchable. You the could use the jQuery Data Tables plugin. In this case you take an existing piece of software and entirely integrate it into your application.
I guess, as a developer you have a very intuitive understanding of these two and thus can distinguish more easily. Nonetheless, I hope that my explanation made it a bit clearer for you.
If not, do you have any specific question?
When talking about the pros and cons of an API versus plugin integration, it is important to highlight that there is no right or wrong basically both have the same nature.
API stands for Application Programming Interface. An API basically defines how a component interacts with a system, facilitating the communication between them.
More integration flexibility. The merchant has total control over the integration and can make the checkout page look as desired.
A theme or skin is a preset package containing additional or changed graphical appearance details, achieved by the use of a graphical user interface (GUI) that can be applied to specific software and websites to suit the purpose, topic, or tastes of different users to customize the look and feel of a piece of computer software or an operating system front-end GUI.from Wikipedia
Easy and ready to use integration. Within a few minutes, the payment methods can be available at the checkout.

SoftPhone and linux

We are thinking about writing a softphone app. It would basically be a component of a system that has calls queued up from a database. It would interface with a LINUX server which has Asterisk installed.
My first question is
Whether we should write the softphone at all or just buy one?
Secondly, if we do,
what base libraries should be use?
I see SIP Sorcery on CodePlex. More than anything, I am looking for a sense of direction here. Any comments or recommendations would be appreciated.
The answer would depend on the capabilities you have in your team and the place you see your core value and the essence of the service you provide.
In most cases, I'd guess that you don't really care about SIP or doing anything fancy with it that require access to its low level. In such a case, I'd recommend getting a ready-made softphone - either a commercial one or an open source one. I'd go for a commercial one, as it will give you the peace of mind as to its stability and assistance with bug fixing and stuff.
To directly answer your question, one of the many open source softphones are likely to fit your needs, and allow slight modifications as needed. Under most open source licenses there is no obligation to distribute your code as long as you only use it internally (do not distribute the binary.)
Trying to guess what you are trying to do, it sounds like a call center like scenario, so one of the many call queue implementations out there might fit your needs.
I had to write an own softphone and I found a great guide how to achieve it. In the guide there are 10 steps provided for having an own softphone (voip-sip-sdk.com on page 272)
I found it useful and maybe you will find it as well.

How do I implement activesync protocol in iphone app?

How do I implement activesync protocol in iphone app?
Any advice, any docs and tutorials are well come.
I have read the Exchange ActiveSync and iOS 4 Devices from apple.
Is there any real docs for this?
Despite having asked a question in the comment, you might be looking for the Microsoft documentation of the Exchange Server Protocols.
If you're thinking of implementing your own client though, I would strongly advise you to pause and consider whether it's really worth it. As someone who's worked on a server-side implementation of these protocols, I can tell you they can get pretty complicated - and the documentation doesn't always give you enough information. (In some areas it's flat out wrong, too.)
It is hard, but not impossible to write an app which communicates via exchange active sync. The link to the Exchange Server Protocols in Jons answer contains a document named MS-ASWBXML. You have to write an encoder for wbxml on your own and the document describes clearly the needs. Additionaly I recommend strongly this document: http://www.w3.org/TR/wbxml/
If the low level is working, you have to implement the EAS-protocol on top ob wbxml, which is not trivial, because of bugs in the documentation, different behaviour of different protocol versions. It will be a lot of trial an error to examine, why the exchange server does not understand your requests ;-)
Using Apple's built in support just means using Apple's APIs for writing to the Address Book and Calendar Store on the phone. Your app isn't supposed to know anything about the way that data is synchronised: it just happens in the background.
If you want direct control over the synchronisation process, then Apple's APIs cannot help you. Jon Skeet's answer contains a link to Microsoft's protocol documentation, but as he mentioned you'll be setting yourself up for a world of pain.
EAS is really meant for device makers to implement and not normal application development. You should look over the ActiveSync Protocol documentation and look into licensing the protocol (yeah its a pay-for license) and then ask yourself if its worth all the trouble to write all the business logic, ecoding logic, intensive testing and the licensing. An alternative is to use Exchange Web Services (EWS), which might be a much better fit - more rhobust in many areas and no licensing needed.
You should also look at this: http://blogs.msdn.com/b/webdav_101/archive/2011/09/29/new-to-exchange-activesync-development.aspx

Any good client-server data sync frameworks available for iPhone?

I'm just getting into the client-server data sync stage of my iPhone app project, and have managed to get my CoreData data model loading on both the iPhone client and my TurboGears server (which is good). I'm now beginning to tackle the problem of sync'ing data between the server and multiple clients, and while I could roll my own, this seems like one of those problems that is quite general and therefore there should be frameworks or libraries out there that provide a good deal of the functionality.
Does anyone know of one that might be applicable to this environment (e.g. Objective-C on iPhone, pyobjc / Python on the server)? If not, does anyone know of a design pattern or generally-agreed upon approach for this stuff that would be a good road to take for a self-implementation? I couldn't find a generally accepted term for this problem beyond "data synchronization" or "remote object persistence", neither of which hit much useful on Google.
I did come across the Funambol framework which looks like it provides this exact type of functionality, however, it is C++ / Java based and therefore seems like it might not be a good fit for the specific languages in my project.
Any help much appreciated.
Since you are using TurboGears already, take a look at the RestController documentation. Using RESTful services has become a widely adopted architecture with many implementations for both clients and servers. Matt Gemmell's MGTwitterEngine is a good example of the client implementation of a specific API, Twitter.

How do you work in team?

I always designed/developed/released a software or web project myself/independent activity using java/vb.net and php (intermediate level of experience). But recently i have to work in a company with team of 5+ using Zend or Cakephp.
Q. My question is how do you work using php frameworks in team and all those SVN staffs?
10 ppls will make one class? or one module? or one front page? How is it made or gets implemented, in most cases? Can someone explain in details.
Thanks in advance.
My advice would be to map work/resources to features, not to implementation. There are a lot of reasons for this, but here are the ones I think are key:
You'll communicate better with business types because your organization and work maps to their functionality.
Many, and perhaps most, technical components will play some role in multiple features. It's much easier, IMO, to have many hands operating on one source file than to have one hand operating across multiple business functions/features. A good SCM will help with problems arising from the former.
This doesn't eliminate, negate or trivialize the need for good internal communication, though. Tech teams must communicate effectively where cross-cutting concerns are identified.