一种加密传输的用户身份更新方法与流程

文档序号:15700402发布日期:2018-10-19 19:44阅读:509来源:国知局

本发明涉及用户身份更新技术领域,尤其涉及一种加密传输的用户身份更新方法。



背景技术:

在3G和4G移动通信系统中,在用户附着到小区时,用户需要以明文方式上报永久身份(IMSI)给基站,基站回传给归属地身份管理设备 (HLR/HSS)。归属地通过用户身份找寻长期密钥(Ki),开始认证鉴权过程。由于用户身份在空口是以明文方式传递,因此存在被窃听的可能。

在5G中,为了解决用户身份的隐私保护问题,5G的用户永久身份(SUPI)通过使用ECIES(椭圆曲线机密性和完整性保护方式)协商密钥并进行加密,在空口以用户隐藏身份(SUCI)的方式进行传递,避免用户身份在空口直接被窃听,用户隐藏身份在用户身份解密功能(SIDF) 中解密。在漫游模式下,完成认证鉴权后,归属地网络的用户数据管理 (UDM)/认证凭证存储和处理功能(ARPF)将推导KSEAF并将用户永久身份SUPI和KSEAF一同发送给拜访地网络的安全锚点功能(SEAF)。网络安全锚点(SEAF)将使用KSEAF和SUPI等参数继续推导KAMF等密钥,提供非接入层(NAS)和接入层(AS)的机密性和完整性保护算法的密钥。在UDM,使用网络的私钥与用户的临时公钥协商出临时共享密钥(Ephemeral shared key),并按照相同的过程能够计算出加密密钥和完整性保护密钥。因此,SIDF/UDM能够计算出用户的真实永久身份SUPI。

使用椭圆曲线密码算法,实现了对于用户永久身份的保护,避免空口截获用户身份。但是无法防止恶意的拜访地网络拿到用户身份后对用户计费等造成影响;也存在拜访地网络由于本身安全问题导致的用户永久身份泄露的问题。在访问了不可信的网络,或者系统认为用户身份存在暴露的情况下,则需要更换用户身份。更换SIM卡是一种保护身份的方式,但是非常不便,而且代价较高。



技术实现要素:

鉴于上述的分析,本发明旨在提供一种加密传输的用户身份更新方法,用以解决现有技术无法防止恶意的拜访地网络拿到用户身份后对用户计费等造成影响、存在拜访地网络由于本身安全问题导致的用户永久身份泄露的问题。

本发明的目的主要是通过以下技术方案实现的:

一种加密传输的用户身份更新方法,

接收用户端发送的用户隐藏身份SUCI;

根据接收到的所述SUCI,计算并缓存共享主密钥Kmaster;

解密SUCI得到用户身份SUPI,根据所述SUPI获取新的用户身份 SUPI_n;

使用共享主密钥Kmaster和SUPI_n生成鉴权向量AV;

将所述鉴权向量中的AUTN、RAND发送至用户端,由用户端计算反馈信息;

根据用户端反馈信息判断是否鉴权通过,若鉴权通过,更新用户身份SUPI为SUPI_n。

本发明有益效果如下:本发明提供的加密传输的用户身份更新方法,能够调度和分配用户身份,利用新的用户身份产生鉴权向量中使用的随机数,并产生更换身份使用的鉴权向量。本发明所述方法能够解决现有技术无法防止恶意的拜访地网络拿到用户身份后对用户计费等造成影响、存在拜访地网络由于本身安全问题导致的用户永久身份泄露的问题的问题。

在上述方案的基础上,本发明还做了如下改进:

进一步,还包括更新XRES生成XRES*;所述由用户端计算的反馈信息为RES*;

比较用户端发送的RES*与XRES*,若一致,鉴权通过。

采用上述进一步方案的有益效果是:通过比较用户端发送的RES*与 XRES*,若一致,鉴权通过;提供了一种在依次交互情况下完成用户身份更新的方法。

进一步,所述由用户端计算的反馈信息为AUTS,若AUTS中的SQN 验证通过,且AUTS中的MAC-S与AUTN中的MAC一致,则鉴权通过。

采用上述进一步方案的有益效果是:利用AUTS直接携带相关信息直接判断用户身份是否更新成功,提供了另一种完成用户身份更新的方法。

进一步,所述RAND获得步骤包括:

利用共享主密钥Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,

使用Ksh对SUPI_n进行机密性和完整性保护,得到RAND。

采用上述进一步方案的有益效果是:提供了一种得到RAND的方法,便于本领域的技术人员根据本发明所述的方法得到RAND。

进一步,所述RAND获得步骤包括:

生成一个随机数rand,利用Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,

使用Ksh对SUPI_n进行机密性和完整性保护,与rand一起生成固定长度的比特流,作为RAND。

采用上述进一步方案的有益效果是:提供了另一种得到RAND的方法,便于本领域的技术人员根据本发明所述的方法得到RAND。

在另一实施例中,公开了一种加密传输的用户身份更新方法,

生成用户隐藏身份SUCI,并发送SUCI至网络端;

接收网络端反馈的AUTN、RAND;

利用预置密钥和RAND生成XMAC,若XMAC与AUTN中的MAC 一致,网络通过用户认证;

解密得到新的用户身份SUPI_n,

根据AUTN、RAND计算反馈信息并发送至网络端。

本发明有益效果如下:本发明提供的加密传输的用户身份更新方法,能够调度和分配用户身份,利用新的用户身份产生鉴权向量中使用的随机数,并产生更换身份使用的鉴权向量。本发明所述方法能够解决现有技术无法防止恶意的拜访地网络拿到用户身份后对用户计费等造成影响、存在拜访地网络由于本身安全问题导致的用户永久身份泄露的问题的问题。用户端和网络端能够同时完成双向认证和用户身份的更换,不增加额外的信息交互。

进一步,所述解密得到新的用户身份SUPI_n包括:

使用共享主密钥Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,利用Ksh计算得到SUPI_n,对SUPI_n进行完整性校验,若通过,解密得到新的用户身份SUPI_n;更新SUPI_p 为SUPI,更新SUPI为SUPI_n。

采用上述进一步方案的有益效果是:通过给出解密得到新的用户身份SUPI_n的过程,能够在拥有阈值密钥的情况下解密得到新的用户身份 SUPI_n,具有很好的隐蔽性,所述方法易于理解和实现。

进一步,所述反馈信息为RES*,

RES*获得步骤包括:

利用预置密钥和RAND生成初始RES*;

使用SUPI_n和初始RES*按照与网络端的协议规则生成新的 RES_n*,作为最终的RES*。

采用上述进一步方案的有益效果是:将RES*作为反馈信息,提供了一种在一次交互情况下完成用户身份更新的方法。

进一步,所述反馈信息为AUTS,AUTS获取步骤包括:

强制认为SQN不同步,

计算得到AUTS并更新AUTS中的MAC-S,

更新后的MAC-S通过SUPI_n和初始MAC-S按照与网络端的协议生成。

采用上述进一步方案的有益效果是:将AUTS作为反馈信息,提供了另一种完成用户身份更新的方法。

在又一实施例中,提供了一种加密传输的用户身份更新方法,利用网络端和用户端的双向交互共同完成用户身份更新任务。

本发明有益效果如下:本发明提供的加密传输的用户身份更新方法,能够调度和分配用户身份,利用新的用户身份产生鉴权向量中使用的随机数,并产生更换身份使用的鉴权向量。本发明所述方法能够解决现有技术无法防止恶意的拜访地网络拿到用户身份后对用户计费等造成影响、存在拜访地网络由于本身安全问题导致的用户永久身份泄露的问题的问题。

本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书、权利要求书以及附图中所特别指出的内容中来实现和获得。

附图说明

附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。

图1为用户身份更新过程示意图;

图2为反馈信息为RES*时的用户身份更新过程示意图。

具体实施方式

下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。

实施例1

本发明的一个实施例1,公开了一种加密传输的用户身份更新方法,该方法应用于网络侧,涉及到的网元包括SEAF(SEcurity Anchor Function,网络安全锚点功能)、AUSF(Authentication ServerFunction,认证服务功能)和UDM(Unified Data Management,统一数据管理平台)。。如图1所示,包括以下步骤:

步骤S1、接收用户端发送的用户隐藏身份SUCI(SUbscriber Concealed Identity,用户隐藏身份);

该步骤包括:

按照3GPP标准流程,在附着时,接收用户端发送的用户隐藏身份 SUCI;

按照3GPP标准流程,SEAF发起认证鉴权请求,开始认证过程。将 SUCI以及网络名称(SN-name)等信息发送给归属地网络的AUSF;

按照3GPP标准流程,归属地网络的AUSF将SUPI、SN-name等信息发送给UDM。

步骤S2、根据接收到的所述SUCI,计算并缓存共享主密钥Kmaster;

步骤S3、解密SUCI得到用户身份SUPI,根据所述SUPI获取新的用户身份SUPI_n;

该步骤包括:

使用3GPP标准的ECIES(Elliptic Curve Integrate Encrypt Scheme,椭圆曲线机密性和完整性保护方式)过程,解密SUCI,获取新的用户身份SUPI_n。

步骤S4、使用共享主密钥Kmaster和SUPI_n生成鉴权向量AV (AuthenticationVector),AV包括AUTN(AuthenticationToken,认证令牌)、RAND(随机数)、XRES(Expected Response,期望响应)、CK(Cipher Key,加密密钥)、IK(Integrity Key,完整性保护密钥);;

AV中的参数RAND获得步骤包括:

生成一个随机数rand,利用Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh。

本领域技术人员应当能够理解的是,共享密钥Ksh可以采用现有的多种方式产生,比如hash,此处不再赘述。

使用Ksh对SUPI_n进行机密性和完整性保护,与rand一起生成固定长度的比特流,作为RAND。

本领域技术人员应当能够理解的是,机密性和完整性保护是指采用共享密钥Ksh对SUPI_n进行加密,加密可采用现有多种加密算法实现,比如SM加密方法,此处不再赘述。

AV中的其他参数,AUTN等,均可采用现有领域中的方式实现,获得方式,不属于本实施例发明点所在,此处不再详述。

步骤S5、将所述鉴权向量中的AUTN、RAND发送至用户端,由用户端计算反馈信息;

该步骤包括:

UDM更新XRES生成XRES*,产生5G HEAV(5G Home Environment AV,5G归属地认证向量),并连同SUPI_n发送至AUSF。

按照3GPP标准流程,AUSF存储XRES*,并计算HXRES*(Hash eXpected RESponse,通过XRES*推导出的期望响应杂凑值),生成5GAV。

按照3GPP标准流程,AUSF发送5GAV和SUPI_n给SEAF,在漫游场景下,此SEAF为漫游地的SEAF。

按照3GPP标准流程,SEAF将AUTN、RAND发送至用户端。

步骤S6-1、根据用户端反馈信息判断是否鉴权通过,若鉴权通过,更新用户身份SUPI为SUPI_n。

与现有技术相比,本实施例提供的加密传输的用户身份更新方法,能够防止恶意的拜访地网络拿到用户身份后对用户计费等造成影响;也能够解决拜访地网络由于本身安全问题导致的用户永久身份泄露的问题。降低身份信息泄露的风险,同时在鉴权过程中,用户端和网络端能够同时完成双向认证和用户身份的更换。

优选地,预置密钥为单独存储的长期密钥或用户端存储的根密钥,网络侧使用的预置密钥与用户端使用的预置密钥保持一致。

可选地,所述RAND还可以通过以下方式获得:利用共享主密钥 Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,

使用Ksh对SUPI_n进行机密性和完整性保护,得到RAND。

用户端的反馈信息可以由多种选择方式,对应的具体方案参见实施例2、3。

获得RAND的方法,具体实现过程如下:

【参考实现1】Kmaster为256bit,Ksh_MSB为Ksh的高128bit,Ksh_LSB 为Ksh的低128bit,SUPI、SUPI_p和SUPI_n长度为64bit。

Ksh=KDF[Kmaster,SUPI_p,SUPI] (1)

RAND=Cph_SUPIn||MAC_SUPIn (4)

说明:式(a-1)可以使用HMAC或者杂凑函数,以Kmaster、SUPI_p 和SUPI作为输入,计算出Ksh;式(a-2)使用Ksh_LSB产生64bit密钥流对SUPI_n进行加密,得到Cph_SUPIn;(a-3)使用HMAC等方式,以Ksh_MSB作为密钥,以Cph_SUPIn||SUPI(SUPI串接在Cph_SUPIn 后面)作为输入,计算消息认证码,并截取低64bit作为认证标签;(a-4) RAND即为Cph_SUPIn||MAC_SUPIn,其中||表示串接。

注:如果使用上述方法,UDM需要存储一定时间范围内的用户使用过的公钥,检测用户公钥产生的随机性。如果频繁使用有规律的密钥, UDM将识别该用户,并采取隔离措施。如果用户声明使用的SUPI_p和 SUPI与UDM不符,UDM亦需要记录此异常事件,并将视情况采取隔离措施。

生成一个随机数rand。使用Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,使用Ksh对SUPI_n进行机密性和完整性保护,与rand一起生成长度为128bit的比特流,作为RAND,例如:

【参考实现2】Kmaster为256bit,Ksh_MSB为Ksh的高128bit,Ksh_LSB 为Ksh的低128bit,SUPI、SUPI_p和SUPI_n长度认为是64bit。

Ksh=KDF[Kmaster,SUPI_p,SUPI] (5)

RAND=rand||Cph_SUPIn||MAC_SUPIn (8)

说明:(b-1)可以使用HMAC或者杂凑函数,以Kmaster、SUPI_p和 SUPI作为输入,计算出Ksh;(b-2)使用Ksh_LSB产生64bit密钥流对 SUPI_n进行加密,得到Cph_SUPIn;(b-3)使用HMAC等方式以Ksh_MSB 为密钥,以rand||Cph_SUPIn||SUPI为输入产生消息认证码,截取低32bit,作为认证标签;(b-4)RAND即为rand||Cph_SUPIn||MAC_SUPIn。

注:如果使用上述方法,UDM需要存储一定时间范围内的用户使用过的公钥,检测用户公钥产生的随机性。如果频繁使用有规律的密钥,UDM将识别该用户,并采取隔离措施。如果用户声明使用的SUPI_p和 SUPI与UDM不符,UDM亦需要记录此异常事件,并将视情况采取隔离措施。

实施例2

本实施例中由用户端计算的反馈信息为RES*,如图2所示,步骤1- 步骤5与实施例1相同;

步骤S6-2、比较用户端发送的RES*与XRES*,若一致,鉴权通过。

该步骤包括:

SEAF接收用户端发送的RES*,SEAF计算HRES*并与HXRES*进行比较;

SEAF发送RES*至AUSF;

AUSF比较用户端发送的RES*与XRES*,若一致,鉴权通过,更新用户身份SUPI为SUPI_n。若不一致,鉴权未通过,用户身份未更新成功,重新要求发起认证鉴权过程。

实施例3

本实施例中由用户端计算的反馈信息为AUTS,步骤S1-步骤S5与实施例1相同;

步骤S6-3:UDM接收用户端发送的AUTS,在UDM中验证AUTS 中的SQN,若验证通过,且AUTS中的MAC-S与AUTN中的MAC一致,则鉴权通过。

实施例4

本实施例公开了一种加密传输的用户身份更新方法,该方法应用于用户侧,涉及到USIM。如图1所示,包括以下步骤:

步骤1)、生成用户隐藏身份SUCI,并发送SUCI至网络端,用于使网络端计算鉴权向量AV;

该步骤包括:

在附着时,用户自身生成一对公私钥对,与预存的网络公钥一同协商出共享主密钥Kmaser;

按照3GPP规定的ECIES流程计算SUCI;

USIM根据网络要求,向网络端发送用户隐藏身份SUCI;

步骤2)、接收网络端反馈的AUTN、RAND;

步骤3)、利用预置密钥和RAND生成XMAC,若XMAC与AUTN 中的MAC一致,网络通过用户认证;

该步骤包括:

按照3GPP标准流程,检查SQN(SequenceNumber,序列号),若同步,利用预置密钥和RAND生成XMAC,若XMAC与AUTN中的MAC 一致,网络通过用户认证;

步骤4)、解密得到新的用户身份SUPI_n,

使用共享主密钥Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,利用Ksh计算得到SUPI_n,对SUPI_n进行完整性校验,若通过,解密得到新的用户身份SUPI_n;更新SUPI_p 为SUPI,更新SUPI为SUPI_n。

步骤5)、根据AUTN、RAND计算反馈信息并发送至网络端。

向网络端发送的反馈信息不同时,对应的具体实施方式参见具体实施例5、6。

实施例5

本实施例中向网络端发送的反馈信息为RES*,如图2所示,步骤1) 至步骤4)与实施例5相同;

步骤5)、根据AUTN、RAND计算RES*并发送至网络端,

该步骤中,

RES*获得步骤包括:

利用预置密钥和RAND生成初始RES*;

使用SUPI_n和初始RES*按照与网络端的协议规则生成新的 RES_n*,作为最终的RES*。

实施例6

本实施例中向网络端发送的反馈信息为AUTS,步骤1)至步骤4) 与实施例5相同;

步骤5)、根据AUTN、RAND计算AUTS并发送至网络端,

AUTS获取步骤包括:

强制执行SQN不同步,

计算得到AUTS并更新AUTS中的MAC-S,

更新后的MAC-S通过SUPI_n和初始MAC-S按照与网络端的协议生成。

实施例7

该实施例公开了一种加密传输的用户身份更新方法,能够同时完成双向认证和用户身份更新。该实施例中所涉及的方法由实施例1、实施例 4结合得到,如图1所示,具体过程如下:

步骤(1)、生成用户隐藏身份SUCI,并发送SUCI至网络端;

该步骤包括:

在附着时,用户自身生成一对公私钥对,与预存的网络公钥一同协商出共享主密钥Kmaser;

按照3GPP规定的ECIES流程计算SUCI;

USIM根据网络要求,向网络端发送用户隐藏身份SUPI;

步骤(2)、接收用户端发送的用户隐藏身份SUCI;

该步骤包括:

按照3GPP标准流程,在附着时,接收用户端发送的用户隐藏身份 SUCI;

按照3GPP标准流程,SEAF发起认证鉴权请求,开始认证过程。将SUCI以及网络名称(SN-name)等信息发送给归属地网络的AUSF;

按照3GPP标准流程,归属地网络的AUSF将SUPI、SN-name等信息发送给UDM。

步骤(3)、根据接收到的所述SUCI,计算并缓存共享主密钥Kmaster;

步骤(4)、解密SUCI得到用户身份SUPI,根据所述SUPI获取新的用户身份SUPI_n;

该步骤包括:

使用3GPP标准的ECIES过程,解密SUCI,获取新的用户身份 SUPI_n。

步骤(5)、使用共享主密钥Kmaster和SUPI_n生成鉴权向量AV;

所述RAND获得步骤包括:

生成一个随机数rand,利用Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,

使用Ksh对SUPI_n进行机密性和完整性保护,与rand一起生成固定长度的比特流,作为RAND。

步骤(6)、将所述鉴权向量中的AUTN、RAND发送至用户端,由用户端计算反馈信息;

该步骤包括:

UDM更新XRES生成XRES*,产生5G HE AV,并连通SUPI_n发送至AUSF。

按照3GPP标准流程,AUSF存储XRES*,并计算HXRES*,生成 5GAV。

按照3GPP标准流程,AUSF发送5GAV和SUPI_n给SEAF,在漫游场景下,此SEAF为漫游地的SEAF。

按照3GPP标准流程,SEAF将AUTN、RAND发送至用户端。

步骤(7)、接收网络端反馈的AUTN、RAND;

步骤(8)、利用预置密钥和RAND生成XMAC,若XMAC与AUTN 中的MAC一致,网络通过用户认证;

该步骤包括:

检查SQN是否同步,若同步,利用预置密钥和RAND生成XMAC,若XMAC与AUTN中的MAC一致,网络通过用户认证;

该步骤包括:

按照3GPP标准流程,检查SQN,若同步,利用预置密钥和RAND 生成XMAC,若XMAC与AUTN中的MAC一致,网络通过用户认证;

步骤(9)、解密得到新的用户身份SUPI_n,

使用共享主密钥Kmaster、前一次使用的用户身份SUPI_p、当前用户身份SUPI,产生共享密钥Ksh,利用Ksh计算得到SUPI_n,对SUPI_n进行完整性校验,若通过,解密得到新的用户身份SUPI_n;更新SUPI_p 为SUPI,更新SUPI为SUPI_n。

步骤(10)、根据AUTN、RAND计算反馈信息并发送至网络端。

步骤(11)、根据用户端反馈信息判断是否鉴权通过,若鉴权通过,更新用户身份SUPI为SUPI_n。

实施例8

该实施例公开了一种加密传输的用户身份更新方法,能够同时完成双向认证和用户身份更新。该实施例中所涉及的方法由实施例2、实施例 5结合得到,如图1所示,具体过程如下:

本实施例与实施例7中的步骤(1)至步骤(9)相同,

步骤(10)、根据AUTN、RAND计算反馈信息RES*并发送至网络端。

该步骤包括:

利用预置密钥和RAND生成初始RES*;

使用SUPI_n和初始RES*按照与网络端的协议规则生成新的 RES_n*,作为最终的RES*。

步骤(11)、根据用户端反馈信息RES*判断是否鉴权通过,若鉴权通过,更新用户身份SUPI为SUPI_n。

SEAF接收用户端发送的RES*,SEAF计算HRES*并与HXRES*进行比较;

SEAF发送RES*至AUSF;

AUSF比较用户端发送的RES*与XRES*,若一致,鉴权通过,更新用户身份SUPI为SUPI_n。

实施例9

该实施例公开了一种加密传输的用户身份更新方法,能够同时完成双向认证和用户身份更新。该实施例中所涉及的方法由实施3、实施例6 结合得到,如图1所示,具体过程如下:

本实施例与实施例9中的步骤(1)至步骤(9)相同,

步骤(10)、根据AUTN、RAND计算反馈信息AUTS并发送至网络端。

该步骤包括:

AUTS获取步骤包括:

强制执行SQN不同步,

计算得到AUTS并更新AUTS中的MAC-S,

更新后的MAC-S通过SUPI_n和初始MAC-S按照与网络端的协议生成。

步骤(11)、根据用户端反馈信息AUTS判断是否鉴权通过,若鉴权通过,更新用户身份SUPI为SUPI_n。

该步骤包括:

UDM接收用户端发送的AUTS,在UDM中验证AUTS中的SQN,若验证通过,且AUTS中的MAC-S与AUTN中的MAC一致,则鉴权通过。

与现有方式相比,本发明实现了在线、用户无感、低成本、高效率、低系统改造的用户身份下发、更换,为用户发生身份泄露风险后保护用户身份信息、便捷更新用户身份提供了有力手段;在面向不可信的拜访地网络时,归属地网络能够使用临时身份,避免不可信的拜访地网络泄露用户真实身份。

本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1