By Ben Sullivan
Called Gaffer, the tool is described by GCHQ as "a large-scale graph database."
"Gaffer is a framework that makes it easy to store large-scale graphs in which the nodes and edges have statistics such as counts, histograms and sketches," reads GCHQ's description.
"These statistics summarize the properties of the nodes and edges over time windows, and they can be dynamically updated over time."
Theories are rife as to why GCHQ, typically a very secretive agency, has decided to do this. Users on Reddit speculated that the graph tool could be part of GCHQ's hiring process, whereby the agency sets challenges and Easter eggs for potential code breakers.
"This might be one of their ways of hiring people. Graphs are really important in a lot of the analysis they do," wrote one Reddit user.
"Scan GCHQ IP ranges for those ports in the configuration file. They might have left some Easter eggs and honey pots laying around.”
Another user posing on the Y Combinator forums asked why GCHQ didn't take the url github.com/gchq, but rather opted for a url with the full name of the organization.
"It is curious to me why GCHQ didn't just contact GitHub to acquire github.com/gchq but instead decided to go with the long and cumbersome github.com/GovernmentCommunicationsHeadquarters. Perhaps it is a British thing," the user wrote.
But a GCHQ spokesperson told TechWeekEurope: "For the first time, GCHQ has contributed to the open source software development community by this week releasing, via Github, a graph database called Gaffer.
"As a government department and technology organization, GCHQ software developers and technologists aim to contribute to open source software projects.
"Gaffer is expected to be the first of many contributions that GCHQ will make to open source software. GCHQ hopes that Gaffer will be useful to others in the community, as well as helping its own technical staff as they continue to develop the software in the future."