<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Designing Secured Services for Authentication, Authorization, and Accounting of Users</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Denys Shevchuk</string-name>
          <email>denys.shevchuk.mkbas.2022@lpnu.ua</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Oleh Harasymchuk</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andrii Partyka</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nataliia Korshun</string-name>
          <email>n.korshun@kubg.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Borys Grinchenko Kyiv University</institution>
          ,
          <addr-line>18/2 Bulvarno-Kudriavska str., Kyiv, 04053</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Lviv Polytechnic National University</institution>
          ,
          <addr-line>12 Stepan Bandera str., Lviv, 79013</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
      </contrib-group>
      <fpage>217</fpage>
      <lpage>225</lpage>
      <abstract>
        <p>In this paperwork service for authentication, authorization, and user management has been designed and developed. The purpose of this work is to simplify the configuration of user security in web and mobile applications with a ready-made solution. The service can be implemented as a separate server on the Internet-you will be able to use it right after registering a client this method does not require the use of your resources, but it is less secure, especially for applications that keep vulnerable data. Still, the best and the most secure option is to download the source code and run the service on the local network. In this case, it will be only accessible to other applications or microservices in the case of microservice architecture.</p>
      </abstract>
      <kwd-group>
        <kwd>1 Authentication</kwd>
        <kwd>authorization</kwd>
        <kwd>JWT token</kwd>
        <kwd>OAuth protocol</kwd>
        <kwd>OpenID</kwd>
        <kwd>RBAC</kwd>
        <kwd>ABAC</kwd>
        <kwd>encryption</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>With the rapid development of information
technology even traditional things such as
shopping, going to restaurants, or going to
work have become available online. It is
enough to have access to the Internet on your
mobile phone, computer, or tablet [1]. Then
you can make purchases online, read the news
on a reliable website, do all the work on a
laptop, and even organize a meeting with
colleagues, etc. There are plenty of examples of
how digitization facilitates many processes in
different areas of our lives, but it also
challenges the security of customers and
service providers [2].</p>
      <p>Nowadays, most web and mobile
applications require the implementation of
user accounting, authentication, and
authorization tools [3]. In most cases, this
functionality will be the same and when you
are developing a new application, you’ll need
to do this all over again. Based on this, you can
automate this process and save money and
time on creating something that has already
been created more than once [4].</p>
      <p>
        The main goal of this paper is to create a
service for the authentication, authorization,
and accounting of users [5] to reduce the time
for the development of such functionality and
simplify the existing application. The solution
can be integrated with other applications in
two different ways:
• As a third-party service that is located on
a separate server that accepts requests
via the Internet.
• As an embedded service in your internal
network which accepts the requests
from the internal intranet network [
        <xref ref-type="bibr" rid="ref7">6</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Understanding OpenID and</title>
    </sec>
    <sec id="sec-3">
      <title>OAuth Protocols</title>
      <p>
        Developers looking to streamline logins or
Identity and Access Management (IAM) in their
apps have many mechanisms available to them
[
        <xref ref-type="bibr" rid="ref8">7</xref>
        ]. Two common approaches are OpenID
Connect and Open Authorization, which are
protocols and standards that work together in
similar, complementary ways [
        <xref ref-type="bibr" rid="ref9">8</xref>
        ].
      </p>
      <p>
        OpenID and OAuth provide authentication
and authorization, respectively. While OAuth
offers a foundation of authorization, it doesn’t
concern itself with authentication at all.
OpenID picks up where OAuth leaves off,
adding authentication functionalities to your
application [
        <xref ref-type="bibr" rid="ref10">9</xref>
        ].
      </p>
      <p>
        OpenID Connect (OIDC) is an authentication
protocol i.e. an identity layer built upon OAuth
2.0 [
        <xref ref-type="bibr" rid="ref11">10</xref>
        ]. It allows Relying Parties (RP) such as
apps and websites to identify if a user is who
they claim to be. It does this by prompting a
login from a separate, trusted platform. That
second platform is an OIDC Provider or
Identity Provider that authenticates the user’s
identity through a proprietary method that
meets industry standards. Upon confirmation
of the user’s identity, the OIDC Provider
generates an ID token for the RP to use,
without disclosing the user’s credentials to the
RP. This allows for seamless authentication for
the end user, who doesn’t have to create and
memorize any additional credentials [
        <xref ref-type="bibr" rid="ref12">11</xref>
        ].
      </p>
      <p>Open Authorization (OAuth) is a method for
authorizing access between apps. It enables a
secondary application to access and perform
certain functions within your app. By
generating access tokens from the secondary
app or website, it offloads the work of
authentication and simply grants access.</p>
      <p>
        The way OAuth works is similar to OIDC at
a surface level. It allows for communication
between two apps or websites. Where it differs
from OIDC is in its lack of authentication of the
user [
        <xref ref-type="bibr" rid="ref13">12</xref>
        ].
      </p>
      <p>
        OAuth provides a foundation in
authorization, allowing other apps to access
yours. And OpenID builds upon that, adding the
ability to authenticate user identities.
Together, they make all elements of login and
IAM much simpler and safer on the user side.
Both OIDC and OAuth offer benefits in a wide
variety of use cases, and many apps implement
both of them [
        <xref ref-type="bibr" rid="ref14">13</xref>
        ].
      </p>
      <p>
        The main difference between OAuth2 and
OpenID Connect is that OAuth2 is only
concerned with authorization, while OpenID
Connect is also concerned with authentication.
Authorization means granting access to
resources, while authentication means
verifying the identity of a user [
        <xref ref-type="bibr" rid="ref15">14</xref>
        ].
      </p>
      <p>
        The problem is that both protocols can be used
to accomplish similar tasks, but that doesn’t
mean they should be used interchangeably.
OpenID provides an identity assertion while
OAuth is more generic. When a client uses
OAuth, a server issues an access token to a third
party, the token is used to access a protected
resource, and the source validates the token
[
        <xref ref-type="bibr" rid="ref16">15</xref>
        ]. Notice, that at no point is the identity of the
owner of the token verified.
      </p>
      <p>
        You can think of a token issued by a resource
server like it’s a ticket to a movie. Nowhere on
the ticket does it say any identifying information
about an individual, it simply is used as a way of
saying I have permission to enter. This means
that the issued token may be in the hands of a
bad actor or a machine [
        <xref ref-type="bibr" rid="ref17">16</xref>
        ].
      </p>
      <p>That is why the service offered below allows
you to implement authentication and
authorization mechanisms at the same time.</p>
    </sec>
    <sec id="sec-4">
      <title>3. Web Service Design for</title>
    </sec>
    <sec id="sec-5">
      <title>Authentication, Authorization,</title>
      <p>and Accounting of Users</p>
      <sec id="sec-5-1">
        <title>3.1. Vulnerability Analysis and</title>
      </sec>
      <sec id="sec-5-2">
        <title>Authentication Mechanism Design</title>
        <p>
          At a conceptual level, authentication
vulnerabilities are among the most
understandable, but they can cause some of the
most critical damage because of the obvious
connection between authentication and
security. Most authentication threats are
associated with passwords or password-based
authentication methods. But broken
authentication is also the cause of many
vulnerabilities [
          <xref ref-type="bibr" rid="ref18">17</xref>
          ]. Broken authentication
occurs when the implemented authentication
process is corrupted. Unfortunately, this is
usually very difficult to investigate in time and
can lead to even greater password risks [
          <xref ref-type="bibr" rid="ref19 ref20">18–19</xref>
          ].
        </p>
        <p>Common broken authentication-related
vulnerabilities:
• Vulnerable authentication logic.
• Weak user profile or password recovery
process.
• Vulnerable library usage for
authentication.
• Unsecured session.
• No blocking and no limit on the number
of login attempts.</p>
        <p>• Insecure password verification methods.
• Weak password security policies.</p>
        <p>
          The suggested authentication mechanism
provides several possibilities at once, which
allows for to minimization of the occurrence of
typical vulnerabilities and also allows to
implementation of the least privileges
principle [
          <xref ref-type="bibr" rid="ref21">20</xref>
          ].
Client and customer password-based
authentication. Basic user authentication is
performed using passwords, which are stored
as hashes calculated using the reliable
SHA256 hashing algorithm of the SHA-2 family.
Also, to counteract the selection of password
hashes, each user has a so-called “salt”—a set
of random characters, which is used to
complicate the definition of hash functions and
hashes using the dictionary attack method
(Fig. 1). That is if an attacker gets the victim’s
password and the hash function used, he will
not be able to perform a dictionary attack on
other users. An additional security protection
is the change of the “salt” every time the user
changes the password [
          <xref ref-type="bibr" rid="ref22">21</xref>
          ].
Multi-layer authentication using email or
phone [
          <xref ref-type="bibr" rid="ref23">22</xref>
          ]. To implement this authentication
mechanism, you must first confirm the user’s
phone or email by entering a confirmation
code that will be sent to the corresponding
phone number or email address. Moreover, the
code that is sent in different ways is different.
It means that the user has 4 options for setting
up authentication:
• Using a password.
• Using a password and confirmation with
a code via an email address [
          <xref ref-type="bibr" rid="ref24">23</xref>
          ].
• Using a password and confirmation with
a code via a phone number.
        </p>
        <p>Using a password, confirmation with a code via
an email address, and confirmation with a code
via a phone number (Fig. 2).</p>
        <p>Password reset. To use this feature, you
need to have a verified email address or phone
number. In this case, a pseudo-random
password is generated and sent to a verified
phone number or mailbox. It is worth noting
that the temporary password is valid only for a
short period after which if the password has
not been changed the procedure must be
repeated (Fig. 3).</p>
        <p>
          Users profile block. This feature is designed
to prevent brute-force attacks on users [
          <xref ref-type="bibr" rid="ref25">24</xref>
          ].
When trying to go through many user
passwords the attacker faces the fact that after
several unsuccessful attempts the user’s
profile is blocked, and he can no longer log in
with the usual password. In this case, the user
can remove the block only by entering a code
that can be sent to a verified email or phone
number (Fig. 4).
Generation of JWT tokens to manage the
authentication session described in Fig. 5.
        </p>
        <p>
          Access token generation. Upon successful
authentication, a pair of tokens is sent to the
user: an access token and a recovery token.
Using the access token, the user can make
requests to resources without
reauthentication as the token acts as a guarantor.
Access tokens are mostly valid for a short time
(for example, 15 minutes) so that when stolen,
an attacker cannot pretend to be an
authenticated user for a long time [
          <xref ref-type="bibr" rid="ref26">25</xref>
          ].
Refresh token generation. Also, if necessary,
the recovery token can be regenerated. They
are stored in the database and are personal for
each user. Recovery tokens usually last for a
long time, such as one week.
        </p>
        <p>Access token refreshment using the refresh
token. Refresh tokens are generated for
authenticated users to be able to obtain a new
access token after the previous one has expired
without having to reenter a password every
fifteen minutes to retrieve it [26].</p>
      </sec>
      <sec id="sec-5-3">
        <title>3.2. Selection and Design</title>
      </sec>
      <sec id="sec-5-4">
        <title>Authorization Mechanism of the</title>
        <p>Role-Based Access Control (RBAC). The service
provides an opportunity to perform
authorization using roles. That is, the user has
a set of roles that were given to him, and the
client can create his requirements for certain
actions by comparing the requested roles for
authorization of the action with the roles that
the user has. Upon successful verification, the
user will be authorized to perform a specific
action [27].</p>
        <p>Attribute Based Access Control (ABAC). Also,
the service provides an opportunity to perform
authorization using attributes [28]. The user
has a set of attributes that were given to him
and the client can create his requirements for
certain actions by comparing the requested
attributes to authorize the action with the
attributes that the user has. Upon successful
verification, the user will be authorized to
perform a specific action [29].</p>
        <p>Mixed authorization. This type of
authorization expands the set of possible
options for granting rights to users and allows
better implementation of the least privileges
rule [30]. That is, do not give the user extra
rights that can lead to unpredictable
consequences of the program’s operation. At
the same time, the check is carried out
separately for roles and separately for
attributes. This division allows for a better
delimitation of authorization because, for
example, not everyone who can delete a user is
an administrator, but every administrator
should be able to delete a user.
Also, a database was designed (Fig. 6) in which
all the necessary data for a service to be able to
function is stored [31], namely:
1. Users—table for storing users’
information (name, email, phone
number, hashed password, etc.).
2. Roles—table for storing role information
that can be created in a system to be able
to implement an RBAC authorization.
3. Attributes—table for storing attribute
information that can be created in a
system to be able to implement an ABAC
authorization.
4. Clients—table for storing client
information.
5. UsersRoles—table for implementing
many-to-many relationships between
User and Role tables.
6. UsersAttributes—table for implementing
many-to-many relationships between
User and Attribute tables.
7. AttributesRoles—table for implementing
many-to-many relationships between
Attribute and Role tables [32].</p>
        <p>During the development of the application,
a code-first approach was used to create the
database in which the SQL code is generated
automatically based on the server language
code. In this case, C# 10 was used in
conjunction with the Entity Framework Core
data access tool [33].</p>
        <p>The entity relationship diagram is
presented below (Fig. 7):</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>4. Service Features Description</title>
      <p>Password-based client and user
authentication. In the first stage, it is checked
whether the user exists at all and, if so, whether
his profile is blocked and whether the
temporary password is valid if it was enabled.
Then their hashes are checked. The password
entered by the user is hashed using the same
hash function (SHA-256) and using the same
“salt” that is stored in the database and is
unique per each user. If more than 5
unsuccessful login attempts are made the user
profile will be blocked.</p>
      <p>Confirmation code generation. The
confirmation code that will be sent via e-mail
or SMS is selected as follows: a pseudo-random
number between 100000 and 999999 is
generated. That is any six-digit number. These
are pseudo-random numbers that are an
important element in solving cybersecurity
problems [34].</p>
      <p>Password reset. When choosing the
password recovery option, the service
generates a new secure pseudo-random
20character password. A pseudo-random
sequence of bytes is also generated which acts
as a “salt” for hashing the password.</p>
      <p>JWT-token generation. JWT tokens are
generated using the asymmetric RSA
encryption algorithm, the key size is 256 bits.
Generation sequence:
• The private key is extracted from the
settings and an RSA object is created.
• A new signature is created for the JWT
token.
• The token itself is created and signed
with the corresponding key.
usually after its expiration date, by filling out
the appropriate form.</p>
      <p>Processing of JWT token in HTTP request.
Before any request that requires the user to be
authenticated, a check is made to see if the
token is present in the request header and if it
is, the data from the token is retrieved and
stored in a temporary storage for the request
duration.</p>
      <p>When RBAC is performed the required roles
for authorization and the user roles are
compared.</p>
      <p>When ABAC is performed the required
attributes for authorization and the user
attributes are compared.</p>
      <p>Authorization attribute. The authorization
attribute checks whether the request sent to
the service is authorized, i.e. it checks whether
the JWT token was successfully verified and
the client/user data were placed in the
temporary storage [35].</p>
      <p>The following tools were used to send
messages to the phone and email:
• For sending SMS the service was
integrated with the Twilio [36].
• for sending emails the service was
integrated with the SendGrid [37].</p>
      <p>In both tools, a service user profile was
created and configured and service integration
was configured using the NuGet package.</p>
    </sec>
    <sec id="sec-7">
      <title>5. Conclusion</title>
      <p>The selection of the type of the correct
authentication and authorization method
depends on the task we’re performing. It’s
appropriate when we’re working on a new
system deployment to test some alternative</p>
      <p>JWT-token validation. To validate the token mechanisms and see which one leads to better
service validates the following: the lifetime of protection from malicious attacks.
the token, the signature key, and the issuer. OAuth and OIDC are both important</p>
      <p>Refresh token generation. When a recovery protocols for developers to understand, with
token is created, a pseudo-random sequence of OAuth providing authorization and OIDC
bits is generated, which is stored in the providing authentication and identity
database and sent to the user in response to management. By understanding the
successful authentication. differences between these two protocols,</p>
      <p>Obtaining a new access token using a developers can make informed decisions on
recovery token. The recovery token can be how to go about building authentication and
regenerated by sending a corresponding integrating with third-party services.
request. Then, with its help, you can update the The paper considers the issue of creating a
access token without filling out the secure service for the authentication and
authentication form again. You just need to authorization of users, which can be
send a request to update the access token, implemented as an independent or built-in
service. In the first case, the service can be
placed on a separate secure server with limited
access, to which requests are sent via the
Internet. The second option of using this
service is in an internal controlled network,
requests to which are sent exclusively in the
internal intranet network.</p>
      <p>The service provides various options for the
authentication mechanism which allows you to
implement various scenarios depending on
security requirements. The service also
provides protection against brute-force
attacks, the ability to reset the password, and
restore the blocked user’s profile.</p>
      <p>Both the RBAC and ABAC mechanisms were
used in the design of the service for the
authorization process. The ability to use mixed
authorization allows you to expand the
capabilities of RBAC authorization, which is
usually suitable for implementing simple
business rules, with the ABAC approach, which
supports data filtering and rules with dynamic
parameters.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <given-names>M.</given-names>
            <surname>Repetto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. Carrega G.</given-names>
            <surname>Lamanna</surname>
          </string-name>
          ,
          <article-title>An Architecture to Manage Security Services for Cloud Applications</article-title>
          , 4th Int.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Conf. Comput. Commun. Secur.</surname>
          </string-name>
          (
          <year>2019</year>
          )
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <given-names>A.</given-names>
            <surname>Bissada</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Olmsted</surname>
          </string-name>
          , Mobile MultiFactor Authentication,
          <source>12th Int. Conf.</source>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <given-names>Internet</given-names>
            <surname>Technol</surname>
          </string-name>
          . Secur. Trans. (
          <year>2017</year>
          )
          <fpage>210</fpage>
          -
          <lpage>211</lpage>
          . doi:
          <volume>10</volume>
          .23919/ICITST.
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <given-names>Y.</given-names>
            <surname>Sadykov</surname>
          </string-name>
          , et al.,
          <article-title>Technology of Location Hiding by Spoofing the Mobile Operator IP Address</article-title>
          ,
          <source>in: IEEE International Conference on Information and Telecommunication Technologies and Radio Electronics</source>
          (
          <year>2021</year>
          )
          <fpage>22</fpage>
          -
          <lpage>25</lpage>
          . doi:
          <volume>10</volume>
          .1109/UkrMiCo52950.
          <year>2021</year>
          .9716700
          <string-name>
            <given-names>G.</given-names>
            <surname>Grieco</surname>
          </string-name>
          , et al.,
          <article-title>Authentication and Authorization in Cyber-Security Frameworks: a Novel Approach for Securing Digital Service Chains</article-title>
          ,
          <source>IEEE 8th Int. Conf. Netw. Softwarization</source>
          (
          <year>2022</year>
          )
          <fpage>468</fpage>
          -
          <lpage>473</lpage>
          . doi:
          <volume>10</volume>
          .1109/NetSoft54395.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <given-names>A.</given-names>
            <surname>Froehlich</surname>
          </string-name>
          ,
          <article-title>What are the most common digital authentication methods? (</article-title>
          <year>2021</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>R.</given-names>
            <surname>Sheldon</surname>
          </string-name>
          , S. Shea,
          <string-name>
            <surname>BYOI (Bring Your Own Identity)</surname>
          </string-name>
          (
          <year>2023</year>
          ). URL: https://www.techtarget.com/searchsec urity/definition/BYOI-bring
          <article-title>-your-ownidentity</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>V.</given-names>
            <surname>Grechaninov</surname>
          </string-name>
          , et al.,
          <article-title>Decentralized Access Demarcation System Construction in Situational Center Network</article-title>
          ,
          <source>in: Workshop on Cybersecurity Providing in Information and Telecommunication Systems II</source>
          , vol.
          <volume>3188</volume>
          , no.
          <issue>2</issue>
          (
          <year>2022</year>
          )
          <fpage>197</fpage>
          -
          <lpage>206</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>S.</given-names>
            <surname>Yevseiev</surname>
          </string-name>
          , et al.,
          <source>Modeling of Security Systems for Critical Infrastructure Facilities</source>
          ,
          <string-name>
            <surname>TECHNOLOGY CENTER</surname>
          </string-name>
          , (
          <year>2022</year>
          ). doi:
          <volume>10</volume>
          .15587/
          <fpage>978</fpage>
          -617-7319- 57-2.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <article-title>[9] Authentication vs</article-title>
          .
          <source>Authorization</source>
          (
          <year>2023</year>
          ). URL: https://auth0.com/docs/get-start ed/identity-fundamentals/
          <article-title>authenticatio n-and-authorization</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [10]
          <string-name>
            <surname>M. TajDini</surname>
          </string-name>
          , et al.,
          <source>Brainwave-based Authentication using Features Fusion, Comput. Secur</source>
          .
          <volume>129</volume>
          , no.
          <volume>103198</volume>
          (
          <year>2023</year>
          )
          <fpage>1</fpage>
          -
          <lpage>11</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.cose.
          <year>2023</year>
          .103198
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [11]
          <article-title>What is the Difference Between Authentication and Authorization? (</article-title>
          <year>2023</year>
          ). URL: https://www.sailpoint. com/identity-library/
          <article-title>difference-betwee n-authentication-and-authorization/</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>J.</given-names>
            <surname>Coutinho</surname>
          </string-name>
          , OIDC vs OAuth (
          <year>2023</year>
          ). URL: https://supertokens.com/blog/oauthvs-oidc
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Li</surname>
          </string-name>
          , et al.,
          <string-name>
            <given-names>A Lightweight</given-names>
            <surname>Identity-Based Authentication</surname>
          </string-name>
          <string-name>
            <surname>Protocol</surname>
          </string-name>
          ,
          <source>IEEE Int. Conf. Signal Processing Commun. Comput</source>
          . (
          <year>2013</year>
          )
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          . doi:
          <volume>10</volume>
          .1109/ICSPCC.
          <year>2013</year>
          .
          <volume>6664134</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>D.</given-names>
            <surname>Kelley</surname>
          </string-name>
          ,
          <article-title>Federate and Secure Identities With Enterprise BYOI (</article-title>
          <year>2021</year>
          ). URL: https://www.techtarget.com/searchsec urity/tip/Federate-and
          <article-title>-secure-identitie s-with-enterprise-BYOI</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>S.-H.</given-names>
            <surname>Kim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.-H.</given-names>
            <surname>Kim</surname>
          </string-name>
          ,
          <article-title>General Authentication Scheme in User-Centric IdM, 18th</article-title>
          <string-name>
            <surname>Int. Conf. Adv. Commun. Technol.</surname>
          </string-name>
          (
          <year>2016</year>
          )
          <fpage>737</fpage>
          -
          <lpage>740</lpage>
          , doi: 10.1109/ICACT.
          <year>2016</year>
          .
          <volume>7423540</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>H.</given-names>
            <surname>Singhal</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Kar</surname>
          </string-name>
          , Information Security Concerns in Digital Services:
          <article-title>Literature Review and a MultiStakeholder Approach</article-title>
          ,
          <source>Int. Conf. Adv. Comput. Commun. Inf</source>
          . (
          <year>2015</year>
          )
          <fpage>901</fpage>
          -
          <lpage>906</lpage>
          . [26]
          <string-name>
            <given-names>H.</given-names>
            <surname>Dinesha</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Agrawal</surname>
          </string-name>
          , Multi-Level doi:
          <volume>10</volume>
          .1109/icacci.
          <year>2015</year>
          .
          <volume>7275725</volume>
          . Authentication Technique for Accessing
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>S.</given-names>
            <surname>Shah</surname>
          </string-name>
          ,
          <string-name>
            <surname>Most Common Authorization Cloud Services</surname>
          </string-name>
          ,
          <source>Int. Conf. Comput. Vulnerabilities</source>
          (
          <year>2022</year>
          ).
          <source>URL: Commun. Appl</source>
          . (
          <year>2012</year>
          )
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          . doi: https://goteleport.com/blog/authorizat 10.1109/ICCCA.
          <year>2012</year>
          .
          <volume>6179130</volume>
          . ion-vulnerabilities/ [27]
          <string-name>
            <given-names>HTTP</given-names>
            <surname>Authorization</surname>
          </string-name>
          , (
          <year>2023</year>
          ). URL:
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>H.</given-names>
            <surname>Hulak</surname>
          </string-name>
          , et al. Formation of https://developer.mozilla.org/en-US/d Requirements for the Electronic Record- ocs/Web/HTTP/Headers/Authorization Book in Guaranteed Information [28]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <article-title>An Attribute-Based Systems of Distance Learning</article-title>
          ,
          <source>in: Statistic Model for Privacy Impact Workshop on Cybersecurity Providing in Assessment, Int. Conf. Collaboration Information and Telecommunication Technol. Syst</source>
          . (
          <year>2016</year>
          )
          <fpage>619</fpage>
          -
          <lpage>621</lpage>
          . doi: Systems,
          <string-name>
            <surname>CPITS</surname>
          </string-name>
          <year>2021</year>
          , vol.
          <volume>2923</volume>
          (
          <year>2021</year>
          )
          <volume>10</volume>
          .1109/cts.
          <year>2016</year>
          .
          <volume>0117</volume>
          .
          <fpage>137</fpage>
          -
          <lpage>142</lpage>
          . [29]
          <string-name>
            <given-names>N.</given-names>
            <surname>Dan</surname>
          </string-name>
          , et al.,
          <source>Attribute Based Access</source>
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>B.</given-names>
            <surname>Bebeshko</surname>
          </string-name>
          , et al.,
          <article-title>Application of Game Control (Abac)-Based Cross-Domain Theory, Fuzzy Logic and Neural Access Control in Service-Oriented Networks for Assessing Risks and Architecture (soa</article-title>
          ),
          <source>Int. Conf. Comput. Sci. Forecasting Rates of Digital Currency</source>
          , Serv. Syst. (
          <year>2012</year>
          )
          <fpage>1405</fpage>
          -
          <lpage>1408</lpage>
          .
          <source>Journal of Theoretical and Applied</source>
          [30]
          <string-name>
            <given-names>A.</given-names>
            <surname>Gupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Sharma</surname>
          </string-name>
          ,
          <source>Authentication &amp; Information Technology</source>
          <volume>100</volume>
          (
          <issue>24</issue>
          )
          <article-title>(2022) Authorization, Int</article-title>
          .
          <source>J. Eng. Res. Technol. 7390-7404. 5</source>
          (
          <issue>3</issue>
          ) (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>V.</given-names>
            <surname>Susukailo</surname>
          </string-name>
          , I. Opirskyy, S. Vasylyshyn, [31]
          <string-name>
            <given-names>SQL</given-names>
            <surname>Server Technical</surname>
          </string-name>
          <article-title>Documentation Analysis of the Attack Vectors Used by (</article-title>
          <year>2023</year>
          ). URL: https://learn.microsoft.
          <source>Threat Actors During the Pandemic</source>
          , com/en-us/sql/sql-server/?view=sql-se
          <source>IEEE 15th Int. Scientific Tech. Conf. rver-ver15 Comput. Sci. Inf</source>
          . Technol. (
          <year>2020</year>
          )
          <fpage>261</fpage>
          - [32]
          <string-name>
            <given-names>V.</given-names>
            <surname>Buriachok</surname>
          </string-name>
          , et al.,
          <source>Invasion Detection 264. doi: 10.1109/csit49958</source>
          .
          <year>2020</year>
          .
          <article-title>932 Model using Two-Stage Criterion of 1897. Detection of Network Anomalies</article-title>
          , in:
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>D.</given-names>
            <surname>Sutkowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Czernicki</surname>
          </string-name>
          ,
          <source>The Benefits Workshop on Cybersecurity Providing in of Self-Sovereign Identity Authentication Information and Telecommunication using Blockchain</source>
          (
          <year>2022</year>
          ).
          <source>URL: Systems</source>
          , vol.
          <volume>2746</volume>
          (
          <year>2020</year>
          )
          <fpage>23</fpage>
          -
          <lpage>32</lpage>
          . https://softwaremind.com/blog/the-be [33]
          <string-name>
            <given-names>C</given-names>
            <surname>#</surname>
          </string-name>
          <article-title>Documentation (</article-title>
          <year>2023</year>
          ).
          <article-title>URL: nefits-of-self-sovereign-identity-authen https://learn.microsoft.com/en-us/dot tication-using-blockchain/ net/csharp/</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>A.</given-names>
            <surname>Hassan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Emam</surname>
          </string-name>
          , Additional [34]
          <string-name>
            <given-names>V.</given-names>
            <surname>Maksymovych</surname>
          </string-name>
          ,
          <article-title>Combined PseudoAuthentication and Authorization using Random Sequence Generator for Registered Email-ID for Cloud Cybersecurity</article-title>
          .
          <source>Sensors</source>
          <volume>22</volume>
          (
          <issue>24</issue>
          ) (
          <year>2022</year>
          ).
          <source>Computing, Int. J. Soft Comput. Eng</source>
          .
          <volume>3</volume>
          (
          <issue>2</issue>
          ) doi: 10.3390/s22249700. (
          <year>2013</year>
          )
          <fpage>110</fpage>
          -
          <lpage>113</lpage>
          . [35]
          <string-name>
            <given-names>R.</given-names>
            <surname>Housley</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Aboba</surname>
          </string-name>
          , Guidance for
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [23]
          <string-name>
            <surname>P.-L. Chen</surname>
            ,
            <given-names>J.-H.</given-names>
          </string-name>
          <string-name>
            <surname>Yang</surname>
            ,
            <given-names>C.-I. Lin</given-names>
          </string-name>
          ,
          <string-name>
            <surname>ID-Based</surname>
            <given-names>Authentication</given-names>
          </string-name>
          , Authorization, and
          <article-title>User Authentication Scheme for Cloud Accounting (AAA) Key Management Computing</article-title>
          ,
          <string-name>
            <surname>J. Electron. Sci. Technol.</surname>
          </string-name>
          (
          <year>2007</year>
          ). URL: https://datatracker.ietf.
          <volume>11</volume>
          (
          <issue>2</issue>
          ) (
          <year>2013</year>
          )
          <fpage>221</fpage>
          -
          <lpage>224</lpage>
          . org/doc/html/rfc4962
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>I.</given-names>
            <surname>Gordin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Graur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Potorac</surname>
          </string-name>
          , Two- [36]
          <string-name>
            <surname>Twilio</surname>
          </string-name>
          ,
          <article-title>Programmable Messaging API Factor Authentication Framework for Overview (</article-title>
          <year>2023</year>
          ). URL: https://www. Private Cloud,
          <source>23rd Int. Conf. Syst. Theory twilio</source>
          .com/docs/sms/api Control Comput.
          <article-title>(</article-title>
          <year>2019</year>
          )
          <fpage>255</fpage>
          -
          <lpage>259</lpage>
          , doi: [37]
          <string-name>
            <given-names>Sendgrid</given-names>
            <surname>Knowledge Center</surname>
          </string-name>
          (
          <year>2023</year>
          ).
          <volume>10</volume>
          .1109/ICSTCC.
          <year>2019</year>
          .8885460. URL: https://docs.sendgrid.com/
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>G.</given-names>
            <surname>Zhao</surname>
          </string-name>
          , et al.,
          <source>Asynchronous ChallengeResponse Authentication Solution Based on Smart Card in Cloud Environment, 2nd Int. Conf. Inf. Sci. Control Eng</source>
          . (
          <year>2015</year>
          )
          <fpage>156</fpage>
          -
          <lpage>159</lpage>
          . doi:
          <volume>10</volume>
          .1109/ICISCE.
          <year>2015</year>
          .
          <volume>42</volume>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>