My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Links

Viafirma Client c++ is a pure c++ API Library.

Introduction:

Viafirma Client Cpp is a pure c++ library for Viafirma APIs, this library handling HTTP request/response and call to VIafirma API to perform Digital signatures.

APIs

This implementation is not full, but supports the basic method for delegating sign to Viafirma server.

Features

This library calls to Viafirma and support:

Support for S/MIME y CMS (PKCS7/RFC 3852)

XML Signature

XAdES, XAdES XL, XAdES A

PDF sign, PAdES

Facturae.

Example

An example program using Viafirma Client cpp as a static library is available in "Downloads" section

                //************************
		// Configuration
		//**************************
		std::string urlViafirma("http://testservices.viafirma.com/viafirma");
                //std::string urlViafirma("http://testservices.viafirma.com/viafirma");

		// create instance of Viafirma client (dont share between threads)
		viafirmaClient v(urlViafirma);

		// Call to server 	
		result=v.signByServer(nameFile,dataToSign,dataSize,alias,password,TYPE_FILE_BINARRY,TYPE_FORMAT_SIGN_BINARRY);
		std::cout << "TEST Sign method. Id sign:"<<result;
		std::cout<<"\nYou can see the verification info in:\n "<<urlViafirma<<"/v/"+result;


		//***************
		// get signed Document (CMD/PKCS7 format)
		//***************

		std::string idSign=result;
		SignedDocument info=v.getSignedDocument(idSign);
		// Signed Document Data: CMD/PKCS7 data: info.data;
		std::cout<<"\n id:"<<info.id;
		std::cout<<"\n name Document:"<<info.name;
		std::cout<<"\n typeFile:"<<info.typeFile;
		std::cout<<"\n Type Format Sign:"<<info.typeFormatSign;
		std::cout<<"\n Signed Document size:"<<info.data;
		std::cout<<"\n Signed Document size:"<<sizeof(info.data);
Powered by Google Project Hosting