Search notes:

Oracle: HISTGRM$

select
   own.name owner     ,
   obj.name obj_name  ,
   col.name col_name  ,
   --
   hgr.obj#           , -- object number
   hgr.col#           , -- column number
   hgr.row#           , -- row number (in row cache)
   hgr.bucket         , -- bucket number
   hgr.endpoint       , -- endpoint hashed value
   hgr.intcol#        , -- internal column number
   hgr.epvalue        , -- endpoint value information
   hgr.ep_repeat_count, -- frequency of the endpoint
   hgr.epvalue_raw    , -- endpoint raw value
   hgr.spare1         , --
   hgr.spare2         , --
   hgr.endpoint_enc     -- encrypted endpoint
from
   sys.obj$       obj                                    join
   sys.user$      own  on obj.owner# = own.user#         join
   sys.col$       col  on obj.obj#   = col.obj#     left join
   sys.histgrm$   hgr  on col.obj#   = hgr.obj#     and
                          col.col#   = hgr.intcol#
where
   own.name = 'RENE'                  and
   obj.name = 'TQ84_HISTOGRAM_TEST'   and
   col.name = 'NM'
;

ORA-01031: insufficient privileges

Is this behavior new in 23c?
The following statement is ok:
select
   obj#           ,
   col#           ,
   row#           ,
   bucket         ,
-- endpoint       ,
   intcol#        ,
-- epvalue        ,
   ep_repeat_count,
-- epvalue_raw    ,
   spare1         ,
   spare2         ,
   endpoint_enc   
from
   sys.histgrm$;
But trying to select from one of the commented columns in the previous statement results in ORA-01031: insufficient privileges:
select
   endpoint       ,
   epvalue        ,
   epvalue_raw 
from
   sys.histgrm$;

See also

dba_tab_histograms
The view "_HISTGRM_DEC" calls dbms_crypto_internal.statsDecryptNum and dbms_crypto_internal.statsDecryptRaw on endpoint_enc and epvalue_raw to decrypt their values, see $ORACLE_HOME/rdbms/admin/catost.sql.
histgrm$ is a pseudo bootstrap table.
hist_head$

Index