User Tools

Site Tools


drivity_tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Last revision Both sides next revision
drivity_tools [2014/03/08 20:50]
aznamerovsky
drivity_tools [2014/03/08 20:59]
aznamerovsky
Line 12: Line 12:
  
 Drivity Tools is available for Windows and Linux. It also can be built on other POSIX platforms, but not yet tested there. It can be used instead of gpsd under Linux, but generally provides a lot more. And definitely it is mostly focused on security because tracking is very sensitive to private data leaks. Drivity Tools is available for Windows and Linux. It also can be built on other POSIX platforms, but not yet tested there. It can be used instead of gpsd under Linux, but generally provides a lot more. And definitely it is mostly focused on security because tracking is very sensitive to private data leaks.
 +
 +
 +==== LICENSE ​ ====
 +
 +
 +**Drivity Tools is available under GPL license** due to using of internal components published under this license. You must put Drivity-based code to OSS domain by default. If you intend to use your code under some other conditions, please request Componentality for appropriate permit and legal assistance.
 +
 +Copyright (c) 2014, Componentality Oy, Konstantin A. Khait
 +
 +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "​Software"​),​ to deal in the Software without restriction,​ including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 +
 +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
 +
 +
 +==== WHAT DRIVITY TOOLS CONSISTS OF?  ====
 +
 +
 +Drivity Tools component contains several parts doing separated things and being integrated to a single entity just to avoid putting extra integration job to the programmer using it.
 +
 +**- Restricted edition of CST middleware.** Old, but still used set of components doing commonly used things like memory management and unified API provisioning. This framework is fully hidden from the applied level and shouldn'​t be accessed directly. CommonLibs code base becomes a replacement of CST middleware for Drivity Tools, but not yet completed
 +
 +**- Streaming NMEA parser.** This component is standalone and can be separated from entire Drivity Tools set if required for the project. NMEA parser can be used as very light and controllable replacement for gpsd and also applied for in-app tasks related to GPS data processing. It uses C++ API, which is event-based and might be a little bit sophisticated for simple tasks
 +
 +**- drvloc API.** Simplified non-streaming oriented API for vehicle location information management. Assumes packaging of the data to simple structures. Also contains primitive encryption API to cover easy security tasks. drvloc API is fully done in C, therefore can be precompiled to pure C projects.
 +
 +**- LBSAPI.** Full-scale tracking API, including data gathering, packaging to JSON structures, encryption and decryption, keys management and so on. Might be used for complex tracking projects.
 +
 +**- drivity CLI** - command line utility for most typical operations.
 +
 +The high level interface is to provide the unified approach for most common things and simplify access to the useful, but complicated features. In case of more special tasks, the programmer should use lower level Drivity Tools interfaces.
 +
 +
 +==== COMPARISON WITH OTHER APPROACHES ​ ====
 +
 +
 +**SSL**
 +
 +Drivity Tools security approach is very similar to SSL. It also uses symmetrical data encryption with asymmetrical encryption of session key and has a comparable level of protection. The key difference Drivity Tools has no extra functions, it uses just one crypto hash algorithm (SHA1), one symmetrical encryption approach (AES256) and one asymmetrical algorithm (RSA). It also doesn'​t include X.509 support and third party certificates validation, which is important for Internet communication,​ but typically unuseful for autonomous vehicle tracking with pre-programmed keys.
 +
 +**gpsd**
 +
 +Drivity tools contains only one parser for regular text NMEA. It doesn'​t support proprietary GPS receiver formats as well as binary NMEA. Drivity Tools is not to be used as a universal GPS processing software, but as an easy processor for most common data format, supported by the most of receivers.
  
drivity_tools.txt ยท Last modified: 2014/03/08 21:02 by aznamerovsky