Let me start by saying that the nice thing to do, is to inform the authors of the research paper that you're creating software that implements the technique they described. They might be very happy to see that their work was useful. You might even get help (or contributions) from them, especially if you release your code as open source.
Now for the legal part of my answer.
Disclaimer: I am not a lawyer. I am merely repeating what I have heard from lawyers, namely that the authors of the research paper can protect their work with copyright, trademarks and patents.
Copyright
Usually, authors get this right automatically, at the moment they put the first words (or the first lines of code) on paper (figuratively speaking: online publications also count).
Unless they've licensed their work to you (e.g. by releasing it under an open source or a creative commons license), you infringe this right if you make a literal copy of (parts of) their work. There's something called "fair use" which implies that you can take snippets of their work, e.g. to quote them literally, explicitly referring to the original work, but the line between infringement and fair use isn't clearly defined in the law. When there's discussion, you'll often see that a judge is involved to decide whether something was allowed under fair use or should be considered an infringement.
Does this apply to you? Probably not. You are reading their description of a mechanism and you are going to create new, original code without literary quoting parts of the research paper. That's not a copyright infringement.
Personally, I like to document my code. If I were you, I would love to add parts of the text of the research paper in the comment sections of my code so that people who want to contribute know the rationale that led to the implementation. However, I would always ask for permission from the authors before doing so.
Trademark
If the authors are creating a commercial product based on their research, they can trademark certain names.
I once bumped into this problem with RC4. The RC4 algorithm used to be a trade secret owned by RSA until it was (allegedly) published on a news group. From that moment on, everyone was allowed to write implementations of the algorithm. I used such an implementation in my open source project, and I created a constant named RC4_ENCRYPTION
. This was not allowed because although the alleged RC4 algorithm can be used, it was illegal for me to use the name RC4 because that name is trademarked by RSA. I didn't infringe any copyright in my code, but I did infringe a trademark. I had to solve this problem by changing the name of the parameter into either ARC4_ENCRYPTION
or ARCFOUR_ENCRYPTION
where ARC4 stands for the "Alleged RC4" algorithm.
Does this apply to you? I don't think so. I didn't read the full paper, but at first sight, I didn't see any ™ or ® symbol in the text related to the mechanism they describe. I leave it up to you to read the paper more thoroughly, looking for those symbols.
FYI: you can put ™ behind any name you use in business, indicating that you intend to use that name in a commercial context. You can only put ® behind such a name if you effectively registered the trademark with the USPTO. Once you have registered a trademark, you have the obligation to defend it. If you don't defend it, you can lose your legal rights on the trademark.
Patents
Patents are the most tricky potential issue. You can't patent source code (it's already protected by copyright), but you can patent the mechanisms that are later expressed in source code.
For a mechanism to be patented, the mechanism needs to be new. If there is "prior art" that already describes the mechanism and that was available in the open, you won't be able to patent your invention. Suppose that the mechanism isn't patented yet, the publication of the paper makes it extremely hard to patent the mechanism in the future. If you would file a patent for the mechanism, a patent office will search for "prior art" and probably find this paper because it's available online.
Personal note: filing a patent, obtaining and maintaining it costs plenty of money. At the start of my career, I didn't have that kind of money, so I chose to protect my inventions by publishing my work as open source. By making the source code and the mechanisms I designed publicly availably, I protected myself against attempts by third parties to patent my inventions. I didn't want to end up in a situation where a big corporation with a big wallet would sue me for infringing a patent they filed on an invention I made. (Often, the "first to patent" has a better legal position than the "first to invent"; in any case: I wanted to avoid legal troubles and going open source was the best option for me at the time.)
Does this apply to you? I didn't see any reference to a patent in the paper—but I admit that I didn't fully read it. At the end of the paper, I noticed the following:
The work described in the paper is supported by a grant from the
Research Grants Council of the Hong Kong Special Administrative Region
(Project No. 413110).
Chances are that this grant implied that the work was created for the greater good, to advance science. Patenting the work would go against this philosophy, but you can't know for sure.
You should try finding out if the mechanism is patented before you start implementing it. That's the tricky part. I have written patents myself, and before writing them, I tried finding out on my own if what I had invented already existed. Being an engineer, I had a hard time searching existing patent databases, so I involved a lawyer to do this in my place.
That's why I started this answer by saying "inform the authors that you're creating software that implements their technique." While doing so, ask them if you can use their copyright to copy snippets of their text into your code, and also ask if there are any other issues that might prevent you from implementing the mechanism they documented.