Homoglyphs are pairs of visual representations of Unicode characters that look similar to the human eye. Identifying homoglyphs is extremely useful for building a strong defence mechanism against many phishing and spoofing attacks, ID imitation, profanity abusing, etc. Although there is a list of discovered homoglyphs published by Unicode consortium, regular expansion of Unicode character scripts necessitates a robust and reliable algorithm that is capable of identifying all possible new homoglyphs. In this article, we first show that shallow Convolutional Neural Networks are capable of identifying homoglyphs. We propose two variations, both of which obtain very high accuracy () on our benchmark dataset. We also report that adoption of transfer learning allows for another model to achieve 100% recall on our dataset. We ensemble these three methods to obtain 99.72% accuracy on our independent test dataset. These results illustrate the superiority of our ensembled model in detecting homoglyphs and suggest that our model can be used to detect new homoglyphs when increasing Unicode characters are added. As a by-product, we also prepare a benchmark dataset based on the currently available list of homoglyphs.
Firebase is the leading Platform-as-a-Service (PaaS) solution in the application development industry. It is globally used by millions of mobile applications and websites. Being a very popular and robust development platform, Firebase has introduced and developed many features and components over the years. Various services and modules are being added to the platform. So, the developers who use Firebase in their applications, need to have versatile knowledge of the platform. It is difficult to acquire an overview of the trends and discussions of any vast and dynamic platform such as Firebase. Therefore, learners, enthusiasts, and often developers have to put in a lot of effort to figure out topics they should explore and focus on. As a large number of application developers frequently use it and engage in various discussions about it in popular community discussion forums for developers, it has become a very promising source for identifying the topics and trends related to Firebase. Stack Overflow is the most popular community for developers’ discussions. It has grown to be a vast ocean of knowledge to explore. In this study, a systematic approach is followed to explore, extract, and analyze Stack Overflow discussions on Firebase to present an overview of the platform. Natural language processing and machine learning methods were used for extracting information from Stack Overflow data. Information collected was reviewed, analyzed, and compiled into this paper by the research group who have practical experiences in the Firebase platform and other relevant software engineering fields.