Code Curmudgeon
Facebook Twitter Linkedin Youtube Instagram

Main menu

Skip to content
  • Home
  • SQLi Hall-of-Shame
  • IoT Hall-of-Shame
  • Security Resources
  • Books
  • Glossary
  • Other Articles
  • About
    • Photography
    • Privacy Policy

Tag: license

Understanding Open Source Licenses

Posted on August 3, 2016 by Code Curmudgeon
two people managing open source licenses in their project
Originally published on Code Curmudgeon in August 2016. Substantially rewritten September 2026. What I got wrong the first time is at the end. Everybody...
Software Development copyright, ip, license, open source, patent
Categories
  • AI
  • Automotive
  • Business
  • Cloud
  • General
  • IoT
  • Journalism
  • Medical
  • Mobile
  • Open-source
  • Quality
  • Security
  • Software Development
  • Space
  • SysAdmin
  • Technology
  • Testing
  • Web
Latest Posts
  • Tests Aren't Medicine
  • Jumping the Goldfish: IoT insecurity Eight Years Later.
  • Top 10 Ways to Spot a Cybersecurity Expert (2026 Edition)
  • Is AI Safe Enough for Safety-critical
  • Using Agile and AI should be your New Years Resolution
  • How to know when you need SBOM
  • AI Ethics and the Three Laws of Robotics
  • Do AI Ethics Really Matter
  • CWE Top 25 2019 and On the Cusp
  • Why Does Everyone Hate Unit Testing
Archives
  • October 2026
  • September 2026
  • April 2026
  • February 2025
  • February 2021
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • August 2019
  • July 2019
  • January 2019
  • September 2018
  • May 2018
  • October 2017
  • August 2017
  • June 2017
  • February 2017
  • January 2017
  • September 2016
  • August 2016
  • April 2016
  • March 2016
  • February 2016
  • December 2015
  • November 2015
  • October 2015
  • July 2015
  • March 2015
  • January 2015
  • October 2014
  • August 2014
  • July 2014
  • June 2014
  • April 2014
  • February 2014
  • January 2014
  • October 2013
  • September 2013
  • August 2013
  • June 2013
  • May 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • September 2011
  • August 2011
Popular Posts
  • What Went Wrong with Static Analysis?
  • Theoretical AppSec Vulnerabilities
  • SQL Injection – When Will We Learn?
  • I Am Positive It Is False
  • Hacking: Medical Devices
  • Remembering a friend and luminary
  • What Does Static Analysis Have To Do With DevOps
  • ASQ Conference in Long Beach
  • SCA is the Latest AppSec Silver Bullet
  • Java Memory Settings – JVM Heap Size
© Code Curmudgeon

Definitioner

SBOM
SBOM stands for Software Bill of Materials. It is a manifest of all the code in a system, device, or application including particular code and libraries from open source software, third parties, etc. It allows users to know what's actually in an application, and thereby do security update, recalls, etc. in the same manner that is currently done for hardware like for medical and automotive. In the USA there is an effort to better define common standards and methods around SBOM being headed by the NTIA. See https://www.ntia.gov/sbom
SCA
SCA or software composition analysis means that you analyze what "other" software is included in your application or system. For example do you use a commercially available library, an open source library, or build OSS straight into your application. If so, then you should be scanning these from a security perspective for known vulnerabilities so you can patch and keep them up-to-date to avoid zero-day security issues.
software composition analysis (SCA)
SCA or software composition analysis means that you analyze what "other" software is included in your application or system. For example do you use a commercially available library, an open source library, or build OSS straight into your application. If so, then you should be scanning these from a security perspective for known vulnerabilities so you can patch and keep them up-to-date to avoid zero-day security issues.
vulnerability
This is a tricky word, especially in application security or cybersecurity. The simple definition in a software context is that the code has some problem that could be exploited by someone at some point. Some think of it as a piece of code with a proven exploit, IE a static analysis violation with a stack trace and values used. This is a very narrow definition that probably doesn't help improve the state of the art. I prefer the idea that it's code that is exploitable based on the body of knowledge (as encapsulated in software coding standards).
CAN (Controller Area Network)
Controller Area Network aka CAN aka CAN Bus is a wiring standard for vehicles that enables communication between various components and devices without having a host computer. For example doors, brakes, transmission.
DMCA
A United States digital rights bill signed in 1998 by Bill Clinton. The aim of DMCA is to protect the rights of both copyright owners and consumers. The act is controversial and some feel that it limits innovation and consumer choice to the benefit of existing content interests such as the RIAA and movie industry.
PR (NIST)
National Institute of Standards and Technology
PR (SATE)
Static Analysis Tool Exposition is an effort by NIST to help people understand what static analysis tools are capable of, and what their limitations are.
PR (Issue Tracking System)
Software that manages a list of problems or issues that an organization faces, such as bugs, tech support calls, etc.
AI (HTML5)
HTML5 is the most recent version of the HTML standard. It is a language used to create web pages. Currently it is a draft standard, but it supported by all major browsers. HTML4 is the current actual standard.
AI (AJAX)
Asynchronous JavaScript and XML. It's a set of web technologies that help create interactive web applications.
AI (Flash)
Web-based multimedia platform. Used for putting animation, interactivity, and video on web pages.
AI (BASIC)
Beginners All Purpose Symbolic Instruction Code. A programming language designed specifically for beginners.
AI (artificial intelligence)
An attempt to make computers work/talk/act like people. Traditional definitions included a simple test that if a person dealing with a computer, for example via a keyboard and monitor, could not tell that there was a computer on the other end, then it was artificial intelligence. Modern definitions are more strict.
static analysis
Any form of software analysis that can be done on the code without actually executing the code. Encompasses techniques like pattern-based analysis, metrics, code review, etc.